public class LabeledStatement extends AstNode
LabeledStatement
node.
Node type is Token.EXPR_VOID
.
AstNode.DebugPrintVisitor, AstNode.PositionComparator
Node.NodeIterator
ATTRIBUTE_FLAG, BOTH, CASEARRAY_PROP, CATCH_SCOPE_PROP, CONTROL_BLOCK_PROP, DECR_FLAG, DESCENDANTS_FLAG, DESTRUCTURING_ARRAY_LENGTH, DESTRUCTURING_NAMES, DESTRUCTURING_PARAMS, DESTRUCTURING_SHORTHAND, DIRECTCALL_PROP, END_DROPS_OFF, END_RETURNS, END_RETURNS_VALUE, END_UNREACHED, END_YIELDS, EXPRESSION_CLOSURE_PROP, first, FUNCTION_PROP, GENERATOR_END_PROP, INCRDECR_PROP, ISNUMBER_PROP, JSDOC_PROP, LABEL_ID_PROP, last, LAST_PROP, LEFT, lineno, LOCAL_BLOCK_PROP, LOCAL_PROP, MEMBER_TYPE_PROP, NAME_PROP, next, NON_SPECIALCALL, OBJECT_IDS_PROP, PARENTHESIZED_PROP, POST_FLAG, PROPERTY_FLAG, propListHead, REGEXP_PROP, RIGHT, SKIP_INDEXES_PROP, SPECIALCALL_EVAL, SPECIALCALL_PROP, SPECIALCALL_WITH, TARGETBLOCK_PROP, type, VARIABLE_PROP
Constructor and Description |
---|
LabeledStatement() |
LabeledStatement(int pos) |
LabeledStatement(int pos,
int len) |
Modifier and Type | Method and Description |
---|---|
void |
addLabel(Label label)
Adds a label and sets its parent to this node.
|
Label |
getFirstLabel() |
Label |
getLabelByName(java.lang.String name)
Returns label with specified name from the label list for
this labeled statement.
|
java.util.List<Label> |
getLabels()
Returns label list
|
AstNode |
getStatement()
Returns the labeled statement
|
void |
setLabels(java.util.List<Label> labels)
Sets label list, setting the parent of each label
in the list.
|
void |
setStatement(AstNode statement)
Sets the labeled statement, and sets its parent to this node.
|
java.lang.String |
toSource(int depth)
Emits source code for this node.
|
void |
visit(NodeVisitor v)
Visits this node, then each label in the label-list, and finally the
statement.
|
addChild, assertNotNull, codeBug, compareTo, debugPrint, depth, getAbsolutePosition, getAstRoot, getEnclosingFunction, getEnclosingScope, getLength, getLineno, getParent, getPosition, hasSideEffects, makeIndent, operatorToString, printList, setBounds, setLength, setParent, setPosition, setRelative, shortName, toSource
addChildAfter, addChildBefore, addChildrenToBack, addChildrenToFront, addChildToBack, addChildToFront, getChildBefore, getDouble, getExistingIntProp, getFirstChild, getIntProp, getJsDoc, getJsDocNode, getLastChild, getLastSibling, getNext, getProp, getScope, getString, getType, hasChildren, hasConsistentReturnUsage, iterator, labelId, labelId, newNumber, newString, newString, newTarget, putIntProp, putProp, removeChild, removeChildren, removeProp, replaceChild, replaceChildAfter, resetTargets, setDouble, setJsDocNode, setLineno, setScope, setString, setType, toString, toStringTree
public LabeledStatement()
public LabeledStatement(int pos)
public LabeledStatement(int pos, int len)
public java.util.List<Label> getLabels()
public void setLabels(java.util.List<Label> labels)
IllegalArgumentException}
- if labels is null
public void addLabel(Label label)
IllegalArgumentException}
- if label is null
public AstNode getStatement()
public Label getLabelByName(java.lang.String name)
null
if there is no
label with that name in the list.public void setStatement(AstNode statement)
java.lang.IllegalArgumentException
- if statement
is null
public Label getFirstLabel()
public java.lang.String toSource(int depth)
AstNode
Note: if the parser was in error-recovery mode, some AST nodes may have
null
children that are expected to be non-null
when no errors are present. In this situation, the behavior of the
toSource
method is undefined: toSource
implementations may assume that the AST node is error-free, since it is
intended to be invoked only at runtime after a successful parse.
public void visit(NodeVisitor v)