Package org.mvel2.ast
Class ASTNode
java.lang.Object
org.mvel2.ast.ASTNode
- All Implemented Interfaces:
Serializable,Cloneable
- Direct Known Subclasses:
AssertNode,AssignmentNode,BlockNode,BooleanNode,BreakNode,Contains,Convertable,DeclProtoVarNode,DeclTypedVarNode,DeepAssignmentNode,EndOfStatement,Fold,Function,ImportNode,IndexedAssignmentNode,IndexedDeclTypedVarNode,IndexedOperativeAssign,IndexedPostFixDecNode,IndexedPostFixIncNode,IndexedPreFixDecNode,IndexedPreFixIncNode,InlineCollectionNode,Instance,InterceptorWrapper,Invert,IsDef,LineLabel,LiteralDeepPropertyNode,LiteralNode,Negation,NewObjectNode,NewObjectPrototype,NewPrototypeNode,OperativeAssign,OperatorNode,PostFixDecNode,PostFixIncNode,PreFixDecNode,PreFixIncNode,Proto,ProtoVarNode,RegExMatch,RegExMatchNode,ReturnNode,Sign,Soundslike,StaticImportNode,Strsim,Substatement,TypeCast,TypedVarNode,Union
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected Accessorstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intprotected intstatic final intstatic final intstatic final intstatic final intprotected Classprotected intprotected char[]intprotected intstatic final intstatic final intstatic final intstatic final intprotected Objectstatic final intprotected Stringstatic final intstatic final intprotected intstatic final intstatic final intprotected ParserContextstatic final intprotected Accessorstatic final intprotected intstatic final intstatic final int -
Constructor Summary
ConstructorsModifierConstructorDescriptionASTNode(char[] expr, int start, int offset, int fields, ParserContext pCtx) protectedASTNode(ParserContext pCtx) -
Method Summary
Modifier and TypeMethodDescriptionbooleanprotected voidcheckArray(Object ctx, Class<?> componentType, int... dimensions) protected ObjectcheckAssignGlobalVariable(Object ctx, String varName, Object value) protected ObjectcheckAssignLocalVariable(Object ctx, String varName, Object value) protected voidcheckExecution(Object ctx) voiddiscard()protected voidenterStack(Object ctx) protected Stringprotected ClassLoaderintchar[]getExpr()intgetName()char[]intgetReducedValue(Object ctx, Object thisValue, VariableResolverFactory factory) getReducedValueAccelerated(Object ctx, Object thisValue, VariableResolverFactory factory) intgetStart()booleanprotected booleanbooleanbooleanbooleanbooleanisFQCN()booleanbooleanbooleanbooleanisOperator(Integer operator) booleanprotected voidleaveStack(Object ctx) setAccessor(Accessor accessor) voidvoidvoidsetCursorPosition(int cursorPosition) voidsetEgressType(Class egressType) voidsetLiteralValue(Object literal) protected voidsetName(char[] name) voidvoidvoidtoString()
-
Field Details
-
LITERAL
public static final int LITERAL- See Also:
-
DEEP_PROPERTY
public static final int DEEP_PROPERTY- See Also:
-
OPERATOR
public static final int OPERATOR- See Also:
-
IDENTIFIER
public static final int IDENTIFIER- See Also:
-
COMPILE_IMMEDIATE
public static final int COMPILE_IMMEDIATE- See Also:
-
NUMERIC
public static final int NUMERIC- See Also:
-
INVERT
public static final int INVERT- See Also:
-
ASSIGN
public static final int ASSIGN- See Also:
-
COLLECTION
public static final int COLLECTION- See Also:
-
THISREF
public static final int THISREF- See Also:
-
INLINE_COLLECTION
public static final int INLINE_COLLECTION- See Also:
-
BLOCK_IF
public static final int BLOCK_IF- See Also:
-
BLOCK_FOREACH
public static final int BLOCK_FOREACH- See Also:
-
BLOCK_WITH
public static final int BLOCK_WITH- See Also:
-
BLOCK_UNTIL
public static final int BLOCK_UNTIL- See Also:
-
BLOCK_WHILE
public static final int BLOCK_WHILE- See Also:
-
BLOCK_DO
public static final int BLOCK_DO- See Also:
-
BLOCK_DO_UNTIL
public static final int BLOCK_DO_UNTIL- See Also:
-
BLOCK_FOR
public static final int BLOCK_FOR- See Also:
-
OPT_SUBTR
public static final int OPT_SUBTR- See Also:
-
FQCN
public static final int FQCN- See Also:
-
STACKLANG
public static final int STACKLANG- See Also:
-
DEFERRED_TYPE_RES
public static final int DEFERRED_TYPE_RES- See Also:
-
STRONG_TYPING
public static final int STRONG_TYPING- See Also:
-
PCTX_STORED
public static final int PCTX_STORED- See Also:
-
ARRAY_TYPE_LITERAL
public static final int ARRAY_TYPE_LITERAL- See Also:
-
NOJIT
public static final int NOJIT- See Also:
-
DEOP
public static final int DEOP- See Also:
-
DISCARD
public static final int DISCARD- See Also:
-
BLOCK_SWITCH
public static final int BLOCK_SWITCH- See Also:
-
firstUnion
protected int firstUnion -
endOfName
protected int endOfName -
fields
public int fields -
egressType
-
expr
protected char[] expr -
start
protected int start -
offset
protected int offset -
nameCache
-
literal
-
accessor
-
safeAccessor
-
cursorPosition
protected int cursorPosition -
nextASTNode
-
pCtx
-
-
Constructor Details
-
ASTNode
-
ASTNode
-
-
Method Details
-
getReducedValueAccelerated
public Object getReducedValueAccelerated(Object ctx, Object thisValue, VariableResolverFactory factory) -
getReducedValue
-
getAbsoluteRootElement
-
getEgressType
-
setEgressType
-
getNameAsArray
public char[] getNameAsArray() -
getAbsoluteName
-
getName
-
getLiteralValue
-
getStatementString
-
storeInLiteralRegister
-
setLiteralValue
-
setName
protected void setName(char[] name) -
setAccessor
-
isIdentifier
public boolean isIdentifier() -
isLiteral
public boolean isLiteral() -
isThisVal
public boolean isThisVal() -
isOperator
public boolean isOperator() -
isOperator
-
getOperator
-
isCollection
protected boolean isCollection() -
isAssignment
public boolean isAssignment() -
isDeepProperty
public boolean isDeepProperty() -
isFQCN
public boolean isFQCN() -
setAsLiteral
public void setAsLiteral() -
setAsFQCNReference
public void setAsFQCNReference() -
getCursorPosition
public int getCursorPosition() -
setCursorPosition
public void setCursorPosition(int cursorPosition) -
isDiscard
public boolean isDiscard() -
discard
public void discard() -
strongTyping
public void strongTyping() -
storePctx
public void storePctx() -
isDebuggingSymbol
public boolean isDebuggingSymbol() -
getFields
public int getFields() -
getAccessor
-
canSerializeAccessor
public boolean canSerializeAccessor() -
getStart
public int getStart() -
getOffset
public int getOffset() -
getExpr
public char[] getExpr() -
toString
-
getClassLoader
-
checkExecution
-
checkArray
-
enterStack
-
leaveStack
-
checkAssignLocalVariable
-
checkAssignGlobalVariable
-