public class VariableDeclaration extends AstNode
Token.VAR, Token.CONST or Token.LET.
If the node is for var or const, the node position is the beginning of the
var or const keyword. For let declarations, the node position coincides
with the first VariableInitializer child.
A standalone variable declaration in a statement context returns true from its isStatement() method.
AstNode.DebugPrintVisitor, AstNode.PositionComparatorNode.NodeIteratorinlineComment, length, parent, positionARROW_FUNCTION_PROP, ATTRIBUTE_FLAG, BOTH, CASEARRAY_PROP, CATCH_SCOPE_PROP, CONTROL_BLOCK_PROP, DECR_FLAG, DESCENDANTS_FLAG, DESTRUCTURING_ARRAY_LENGTH, DESTRUCTURING_NAMES, DESTRUCTURING_PARAMS, 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, SHORTHAND_PROPERTY_NAME, SKIP_INDEXES_PROP, SPECIALCALL_EVAL, SPECIALCALL_PROP, SPECIALCALL_WITH, TARGETBLOCK_PROP, TEMPLATE_LITERAL_PROP, type, VARIABLE_PROP| Constructor and Description |
|---|
VariableDeclaration() |
VariableDeclaration(int pos) |
VariableDeclaration(int pos,
int len) |
| Modifier and Type | Method and Description |
|---|---|
void |
addVariable(VariableInitializer v)
Adds a variable initializer node to the child list.
|
java.util.List<VariableInitializer> |
getVariables()
Returns variable list.
|
boolean |
isConst()
Returns true if this is a
Token.CONST declaration. |
boolean |
isLet()
Returns true if this is a
Token.LET declaration. |
boolean |
isStatement()
Returns true if this node represents a statement.
|
boolean |
isVar()
Returns true if this is a
var (not const or let) declaration. |
void |
setIsStatement(boolean isStatement)
Set or unset the statement flag.
|
Node |
setType(int type)
Sets the node type and returns this node.
|
void |
setVariables(java.util.List<VariableInitializer> variables)
Sets variable list
|
java.lang.String |
toSource(int depth)
Emits source code for this node.
|
void |
visit(NodeVisitor v)
Visits this node, then each
VariableInitializer child. |
addChild, assertNotNull, codeBug, compareTo, debugPrint, depth, getAbsolutePosition, getAstRoot, getEnclosingFunction, getEnclosingScope, getInlineComment, getLength, getLineno, getParent, getPosition, hasSideEffects, makeIndent, operatorToString, printList, setBounds, setInlineComment, setLength, setParent, setPosition, setRelative, shortName, toSourceaddChildAfter, addChildBefore, addChildrenToBack, addChildrenToFront, addChildToBack, addChildToFront, getBigInt, 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, setBigInt, setDouble, setJsDocNode, setLineno, setScope, setString, toString, toStringTreepublic VariableDeclaration()
public VariableDeclaration(int pos)
public VariableDeclaration(int pos,
int len)
public java.util.List<VariableInitializer> getVariables()
null.public void setVariables(java.util.List<VariableInitializer> variables)
java.lang.IllegalArgumentException - if variables list is nullpublic void addVariable(VariableInitializer v)
java.lang.IllegalArgumentException - if v is nullpublic Node setType(int type)
public boolean isVar()
var (not const or let) declaration.declType is Token.VARpublic boolean isConst()
Token.CONST declaration.public boolean isLet()
Token.LET declaration.public boolean isStatement()
public void setIsStatement(boolean isStatement)
public java.lang.String toSource(int depth)
AstNodeNote: 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)
VariableInitializer child.