Package org.mvel2.ast
Class IfNode
- java.lang.Object
-
- org.mvel2.ast.ASTNode
-
- org.mvel2.ast.BlockNode
-
- org.mvel2.ast.IfNode
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Cloneable
,NestedStatement
public class IfNode extends BlockNode implements NestedStatement
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected ExecutableStatement
condition
protected ExecutableStatement
elseBlock
protected IfNode
elseIf
protected boolean
idxAlloc
protected ExecutableStatement
nestedStatement
-
Fields inherited from class org.mvel2.ast.BlockNode
blockOffset, blockStart, compiledBlock
-
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 IfNode(char[] expr, int start, int offset, int blockStart, int blockOffset, int fields, ParserContext pCtx)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ExecutableStatement
getElseBlock()
ExecutableStatement
getNestedStatement()
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)
IfNode
setElseBlock(char[] block, int cursor, int offset, ParserContext ctx)
IfNode
setElseIf(IfNode elseIf)
java.lang.String
toString()
-
Methods inherited from class org.mvel2.ast.BlockNode
getBlockOffset, getBlockStart, getCompiledBlock
-
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
-
-
-
-
Field Detail
-
condition
protected ExecutableStatement condition
-
nestedStatement
protected ExecutableStatement nestedStatement
-
elseIf
protected IfNode elseIf
-
elseBlock
protected ExecutableStatement elseBlock
-
idxAlloc
protected boolean idxAlloc
-
-
Constructor Detail
-
IfNode
public IfNode(char[] expr, int start, int offset, int blockStart, int blockOffset, int fields, ParserContext pCtx)
-
-
Method Detail
-
getReducedValueAccelerated
public java.lang.Object getReducedValueAccelerated(java.lang.Object ctx, java.lang.Object thisValue, VariableResolverFactory factory)
- Overrides:
getReducedValueAccelerated
in classASTNode
-
getReducedValue
public java.lang.Object getReducedValue(java.lang.Object ctx, java.lang.Object thisValue, VariableResolverFactory factory)
- Overrides:
getReducedValue
in classASTNode
-
getNestedStatement
public ExecutableStatement getNestedStatement()
- Specified by:
getNestedStatement
in interfaceNestedStatement
-
getElseBlock
public ExecutableStatement getElseBlock()
-
setElseBlock
public IfNode setElseBlock(char[] block, int cursor, int offset, ParserContext ctx)
-
-