public class NewObjectNode extends ASTNode
Modifier and Type | Class and Description |
---|---|
static class |
NewObjectNode.NewObjectArray |
Modifier and Type | Field and Description |
---|---|
private static java.lang.Class[] |
EMPTYCLS |
private char[] |
name |
private Accessor |
newObjectOptimizer |
private TypeDescriptor |
typeDescr |
accessor, ARRAY_TYPE_LITERAL, ASSIGN, BLOCK_DO, BLOCK_DO_UNTIL, BLOCK_FOR, BLOCK_FOREACH, BLOCK_IF, BLOCK_UNTIL, BLOCK_WHILE, BLOCK_WITH, COLLECTION, COMPILE_IMMEDIATE, cursorPosition, DEEP_PROPERTY, DEFERRED_TYPE_RES, DEOP, DISCARD, egressType, endOfName, expr, fields, firstUnion, FQCN, IDENTIFIER, INLINE_COLLECTION, INVERT, literal, LITERAL, nameCache, nextASTNode, NOJIT, NUMERIC, offset, OPERATOR, OPT_SUBTR, pCtx, PCTX_STORED, safeAccessor, STACKLANG, start, STRONG_TYPING, THISREF
Constructor and Description |
---|
NewObjectNode(TypeDescriptor typeDescr,
int fields,
ParserContext pCtx) |
Modifier and Type | Method and Description |
---|---|
private java.lang.Object |
createPrototypalObject(java.lang.Object ctx,
java.lang.Object thisRef,
VariableResolverFactory factory) |
Accessor |
getNewObjectOptimizer() |
java.lang.Object |
getReducedValue(java.lang.Object ctx,
java.lang.Object thisValue,
VariableResolverFactory factory) |
java.lang.Object |
getReducedValueAccelerated(java.lang.Object ctx,
java.lang.Object thisValue,
VariableResolverFactory factory) |
TypeDescriptor |
getTypeDescr() |
private boolean |
isPrototypeFunction() |
private void |
rewriteClassReferenceToFQCN(int fields) |
canSerializeAccessor, discard, getAbsoluteName, getAbsoluteRootElement, getAccessor, getClassLoader, getCursorPosition, getEgressType, getExpr, getFields, getLiteralValue, getName, getNameAsArray, getOffset, getOperator, getStart, isAssignment, isCollection, isDebuggingSymbol, isDeepProperty, isDiscard, isFQCN, isIdentifier, isLiteral, isOperator, isOperator, isThisVal, setAccessor, setAsFQCNReference, setAsLiteral, setCursorPosition, setEgressType, setLiteralValue, setName, storeInLiteralRegister, storePctx, strongTyping, toString
private transient Accessor newObjectOptimizer
private TypeDescriptor typeDescr
private char[] name
private static final java.lang.Class[] EMPTYCLS
public NewObjectNode(TypeDescriptor typeDescr, int fields, ParserContext pCtx)
private void rewriteClassReferenceToFQCN(int fields)
public java.lang.Object getReducedValueAccelerated(java.lang.Object ctx, java.lang.Object thisValue, VariableResolverFactory factory)
getReducedValueAccelerated
in class ASTNode
public java.lang.Object getReducedValue(java.lang.Object ctx, java.lang.Object thisValue, VariableResolverFactory factory)
getReducedValue
in class ASTNode
private boolean isPrototypeFunction()
private java.lang.Object createPrototypalObject(java.lang.Object ctx, java.lang.Object thisRef, VariableResolverFactory factory)
public TypeDescriptor getTypeDescr()
public Accessor getNewObjectOptimizer()