public final class MatchExpression extends ExpressionStatement implements Alternatives<ExpressionStatement>
Modifier and Type | Method and Description |
---|---|
void |
accept(GoloIrVisitor visitor)
Accept the visitor.
|
java.util.List<WhenClause<ExpressionStatement>> |
getClauses() |
ExpressionStatement |
getOtherwise() |
MatchExpression |
ofAST(GoloASTNode node) |
MatchExpression |
otherwise(java.lang.Object action) |
protected void |
replaceElement(GoloElement original,
GoloElement newElement)
Replace a child.
|
MatchExpression |
then(java.lang.Object action) |
void |
walk(GoloIrVisitor visitor)
Walk the visitor through this node children.
|
MatchExpression |
when(java.lang.Object cond) |
of
cantConvert, cantReplace, cantReplace, doesNotContain, getASTNode, getDocumentation, getLocalReferenceTable, getParentNode, getPositionInSourceCode, hasASTNode, makeParentOf, replaceInParentBy, setASTNode, setParentNode
public MatchExpression when(java.lang.Object cond)
when
in interface Alternatives<ExpressionStatement>
public MatchExpression then(java.lang.Object action)
then
in interface Alternatives<ExpressionStatement>
public MatchExpression otherwise(java.lang.Object action)
otherwise
in interface Alternatives<ExpressionStatement>
public java.util.List<WhenClause<ExpressionStatement>> getClauses()
getClauses
in interface Alternatives<ExpressionStatement>
public ExpressionStatement getOtherwise()
getOtherwise
in interface Alternatives<ExpressionStatement>
public MatchExpression ofAST(GoloASTNode node)
ofAST
in class GoloElement
public void accept(GoloIrVisitor visitor)
GoloElement
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
public void walk(GoloIrVisitor visitor)
GoloElement
walk
in class GoloElement
protected void replaceElement(GoloElement original, GoloElement newElement)
GoloElement
Replace original
with newElement
if original
is a child of this node
and type matches.
replaceElement
in class 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)