public final class WhenClause<T extends GoloElement<?>> extends GoloElement<WhenClause<T>>
| Modifier and Type | Method and Description |
|---|---|
java.lang.Object[] |
__$$_destruct(int number,
boolean substruct,
java.lang.Object[] toSkip)
New style destructuring helper.
|
void |
accept(GoloIrVisitor visitor)
Accept the visitor.
|
T |
action() |
java.util.List<GoloElement<?>> |
children()
Returns a list of all the direct children of this node.
|
ExpressionStatement<?> |
condition() |
Tuple |
destruct()
Deprecated.
This method should not be called directly and is no more used by new style destructuring.
|
protected void |
replaceElement(GoloElement<?> original,
GoloElement<?> newElement)
Replace a child.
|
protected WhenClause<T> |
self() |
WhenClause<T> |
then(T action) |
java.lang.String |
toString() |
ancestor, ancestor, ancestorOfType, cantConvert, cantReplace, cantReplace, children, children, descendants, descendants, descendants, documentation, documentation, doesNotContain, enclosingModule, getLocalReferenceTable, hasParent, hasPosition, inheritedMetadata, makeParentOf, metadata, metadata, next, next, next, ofAST, parent, positionInSourceCode, positionInSourceCode, previous, previous, previous, replaceInParentBy, walkprotected WhenClause<T> self()
self in class GoloElement<WhenClause<T extends GoloElement<?>>>public ExpressionStatement<?> condition()
public WhenClause<T> then(T action)
public java.lang.String toString()
toString in class java.lang.Objectprotected void replaceElement(GoloElement<?> original, GoloElement<?> newElement)
Replace original with newElement if original is a child of this node
and type matches.
replaceElement in class GoloElement<WhenClause<T extends GoloElement<?>>>original - the original value to replace. Must be a child of this nodenewElement - the element to replace with. Type must match.GoloElement.cantReplace(),
GoloElement.cantReplace(GoloElement, GoloElement),
GoloElement.doesNotContain(GoloElement),
GoloElement.cantConvert(String, Object)public void accept(GoloIrVisitor visitor)
This method should only call the visitor visitXXXX method.
The children of this node will be visited by the
GoloElement.walk(GoloIrVisitor) method.
accept in class GoloElement<WhenClause<T extends GoloElement<?>>>public java.util.List<GoloElement<?>> children()
children in class GoloElement<WhenClause<T extends GoloElement<?>>>@Deprecated public Tuple destruct()
public java.lang.Object[] __$$_destruct(int number, boolean substruct, java.lang.Object[] toSkip)
The destructuring must be to exactly two values. No remainer syntax is allowed.
The destructured values are the condition and the action.
number - number of variable that will be affected.substruct - whether the destructuring is complete or should contains a sub structure.toSkip - a boolean array indicating the elements to skip.