Skip to content

Statement Nodes

kind discriminant: "Block"

FieldType
statementsNode[]

kind discriminant: "IfStatement"

FieldType
isConstexprboolean
initStatementNode?
conditionNode?
thenBodyBlockNode?
elseBodyNode?

kind discriminant: "SwitchStatement"

FieldType
initStatementNode?
conditionNode?
casesNode[]

kind discriminant: "CaseLabel"

FieldType
valueNode?
statementsNode[]

kind discriminant: "BreakStatement"

No own serialized fields.


kind discriminant: "ContinueStatement"

No own serialized fields.


kind discriminant: "ReturnStatement"

FieldType
valueNode?

kind discriminant: "GotoStatement"

FieldType
labelstring

LabeledStatementNode (extends StatementNode)

Section titled “LabeledStatementNode (extends StatementNode)”

kind discriminant: "LabeledStatement"

FieldType
labelstring
bodyNode?

kind discriminant: "DefaultLabel"

FieldType
statementsNode[]

kind discriminant: "WhileStatement"

FieldType
initStatementNode?
conditionNode?
bodyBlockNode?

kind discriminant: "DoWhileStatement"

FieldType
conditionNode?
bodyBlockNode?

kind discriminant: "ForStatement"

FieldType
initNode?
conditionNode?
updateNode?
bodyBlockNode?

kind discriminant: "ForRangeStatement"

FieldType
initStatementNode?
loopVarNode?
rangeNode?
bodyBlockNode?

kind discriminant: "CatchClause"

FieldType
isCatchAllboolean
parameterNode?
bodyBlockNode?

kind discriminant: "TryStatement"

FieldType
bodyBlockNode?
catchClausesCatchClauseNode[]