Package org.mvel2.ast
Class NewObjectNode
- java.lang.Object
-
- org.mvel2.ast.ASTNode
-
- org.mvel2.ast.NewObjectNode
-
- All Implemented Interfaces:
java.io.Serializable,java.lang.Cloneable
public class NewObjectNode extends ASTNode
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classNewObjectNode.NewObjectArray
-
Field Summary
Fields Modifier and Type Field Description private static java.lang.Class[]EMPTYCLSprivate static java.util.logging.LoggerLOGprivate char[]nameprivate AccessornewObjectOptimizerprivate TypeDescriptortypeDescr-
Fields inherited from class org.mvel2.ast.ASTNode
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 Summary
Constructors Constructor Description NewObjectNode(TypeDescriptor typeDescr, int fields, ParserContext pCtx)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private java.lang.ObjectcreatePrototypalObject(java.lang.Object ctx, java.lang.Object thisRef, VariableResolverFactory factory)AccessorgetNewObjectOptimizer()java.lang.ObjectgetReducedValue(java.lang.Object ctx, java.lang.Object thisValue, VariableResolverFactory factory)java.lang.ObjectgetReducedValueAccelerated(java.lang.Object ctx, java.lang.Object thisValue, VariableResolverFactory factory)TypeDescriptorgetTypeDescr()private booleanisPrototypeFunction()private voidrewriteClassReferenceToFQCN(int fields)-
Methods inherited from class org.mvel2.ast.ASTNode
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
-
-
-
-
Field Detail
-
LOG
private static final java.util.logging.Logger LOG
-
newObjectOptimizer
private transient Accessor newObjectOptimizer
-
typeDescr
private TypeDescriptor typeDescr
-
name
private char[] name
-
EMPTYCLS
private static final java.lang.Class[] EMPTYCLS
-
-
Constructor Detail
-
NewObjectNode
public NewObjectNode(TypeDescriptor typeDescr, int fields, ParserContext pCtx)
-
-
Method Detail
-
rewriteClassReferenceToFQCN
private void rewriteClassReferenceToFQCN(int fields)
-
getReducedValueAccelerated
public java.lang.Object getReducedValueAccelerated(java.lang.Object ctx, java.lang.Object thisValue, VariableResolverFactory factory)- Overrides:
getReducedValueAcceleratedin classASTNode
-
getReducedValue
public java.lang.Object getReducedValue(java.lang.Object ctx, java.lang.Object thisValue, VariableResolverFactory factory)- Overrides:
getReducedValuein classASTNode
-
isPrototypeFunction
private boolean isPrototypeFunction()
-
createPrototypalObject
private java.lang.Object createPrototypalObject(java.lang.Object ctx, java.lang.Object thisRef, VariableResolverFactory factory)
-
getTypeDescr
public TypeDescriptor getTypeDescr()
-
getNewObjectOptimizer
public Accessor getNewObjectOptimizer()
-
-