public final class ForEachLoopStatement extends GoloStatement implements Scope, BlockContainer
Modifier and Type | Method and Description |
---|---|
void |
accept(GoloIrVisitor visitor) |
ForEachLoopStatement |
block(java.lang.Object block) |
Block |
getBlock() |
ExpressionStatement |
getIterable() |
LocalReference |
getReference() |
java.util.List<LocalReference> |
getReferences() |
ExpressionStatement |
getWhenClause() |
boolean |
hasWhenClause() |
boolean |
isDestructuring() |
boolean |
isVarargs() |
ForEachLoopStatement |
ofAST(GoloASTNode node) |
ForEachLoopStatement |
on(java.lang.Object iterable) |
void |
relink(ReferenceTable table)
Make the given table a parent of this scope.
|
void |
relinkTopLevel(ReferenceTable table)
Make the given table the top-level parent of this scope.
|
protected void |
replaceElement(GoloElement original,
GoloElement newElement) |
ForEachLoopStatement |
var(java.lang.Object varRef) |
ForEachLoopStatement |
varargs(boolean b) |
void |
walk(GoloIrVisitor visitor) |
ForEachLoopStatement |
when(java.lang.Object clause) |
cantConvert, cantReplace, cantReplace, doesNotContain, getASTNode, getDocumentation, getLocalReferenceTable, getParentNode, getPositionInSourceCode, hasASTNode, makeParentOf, replaceInParentBy, setASTNode, setParentNode
public ForEachLoopStatement block(java.lang.Object block)
public ForEachLoopStatement ofAST(GoloASTNode node)
ofAST
in class GoloElement
public ForEachLoopStatement on(java.lang.Object iterable)
public ForEachLoopStatement varargs(boolean b)
public ForEachLoopStatement var(java.lang.Object varRef)
public ForEachLoopStatement when(java.lang.Object clause)
public ExpressionStatement getIterable()
public Block getBlock()
getBlock
in interface BlockContainer
public boolean isDestructuring()
public boolean isVarargs()
public LocalReference getReference()
public java.util.List<LocalReference> getReferences()
public boolean hasWhenClause()
public ExpressionStatement getWhenClause()
public void relink(ReferenceTable table)
Scope
public void relinkTopLevel(ReferenceTable table)
Scope
Go up in the hierarchy of parent scope, and set the root to the given table.
relinkTopLevel
in interface Scope
public void accept(GoloIrVisitor visitor)
accept
in class GoloElement
public void walk(GoloIrVisitor visitor)
walk
in class GoloElement
protected void replaceElement(GoloElement original, GoloElement newElement)
replaceElement
in class GoloElement