public class NewExpression extends FunctionCall
Token.NEW
.
NewExpression : MemberExpression new NewExpressionThis node is a subtype of
FunctionCall
, mostly for internal code
sharing. Structurally a NewExpression
node is very similar to a
FunctionCall
, so it made a certain amount of sense.AstNode.DebugPrintVisitor, AstNode.PositionComparator
Node.NodeIterator
arguments, lp, NO_ARGS, rp, target
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 |
---|
NewExpression() |
NewExpression(int pos) |
NewExpression(int pos,
int len) |
Modifier and Type | Method and Description |
---|---|
ObjectLiteral |
getInitializer()
Returns initializer object, if any.
|
void |
setInitializer(ObjectLiteral initializer)
Sets initializer object.
|
java.lang.String |
toSource(int depth)
Emits source code for this node.
|
void |
visit(NodeVisitor v)
Visits this node, the target, and each argument.
|
addArgument, getArguments, getLp, getRp, getTarget, setArguments, setLp, setParens, setRp, setTarget
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 NewExpression()
public NewExpression(int pos)
public NewExpression(int pos, int len)
public ObjectLiteral getInitializer()
null
if
not specified.public void setInitializer(ObjectLiteral initializer)
new expr [ ( arglist ) ] [initializer]
,
in which initializer is an object literal that is used to set
additional properties on the newly-created expr
object.initializer
- extra initializer object.
Can be null
.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.
toSource
in class FunctionCall
depth
- the current recursion depth, typically beginning at 0
when called on the root node.public void visit(NodeVisitor v)
visit
in class FunctionCall
v
- the object to call with this node and its children