Package org.mvel2.ast
Class ForNode
- java.lang.Object
-
- org.mvel2.ast.ASTNode
-
- org.mvel2.ast.BlockNode
-
- org.mvel2.ast.ForNode
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Cloneable
public class ForNode extends BlockNode
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected ExecutableStatement
after
protected ExecutableStatement
condition
protected boolean
indexAlloc
protected ExecutableStatement
initializer
protected java.lang.String
item
-
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 ForNode(char[] expr, int start, int offset, int blockStart, int blockEnd, int fields, ParserContext pCtx)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private boolean
buildForEach(char[] condition, int start, int offset, int blockStart, int blockEnd, int fields, ParserContext pCtx)
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)
private static int
nextCondPart(char[] condition, int cursor, int end, boolean allowEnd)
-
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, toString
-
-
-
-
Field Detail
-
item
protected java.lang.String item
-
initializer
protected ExecutableStatement initializer
-
condition
protected ExecutableStatement condition
-
after
protected ExecutableStatement after
-
indexAlloc
protected boolean indexAlloc
-
-
Constructor Detail
-
ForNode
public ForNode(char[] expr, int start, int offset, int blockStart, int blockEnd, 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
-
buildForEach
private boolean buildForEach(char[] condition, int start, int offset, int blockStart, int blockEnd, int fields, ParserContext pCtx)
-
nextCondPart
private static int nextCondPart(char[] condition, int cursor, int end, boolean allowEnd)
-
-