org.apache.commons.jexl.parser
Class ASTForeachStatement

java.lang.Object
  extended by org.apache.commons.jexl.parser.SimpleNode
      extended by org.apache.commons.jexl.parser.ASTForeachStatement
All Implemented Interfaces:
Node

public class ASTForeachStatement
extends SimpleNode

ForEach statement. Syntax: foreach (var in iterable) Statement()

Since:
1.1
Author:
Dion Gillard

Field Summary
private static Info DUMMY
          dummy velocity info.
private static int ITEMS_INDEX
          index of the items.
private static int STATEMENT_INDEX
          index of the code to execute.
private static int VAR_INDEX
          index of the loop variable.
 
Fields inherited from class org.apache.commons.jexl.parser.SimpleNode
children, id, parent, parser
 
Constructor Summary
ASTForeachStatement(int id)
          Create the node given an id.
ASTForeachStatement(Parser p, int id)
          Create a node with the given parser and id.
 
Method Summary
 java.lang.Object jjtAccept(ParserVisitor visitor, java.lang.Object data)
          Accept the visitor.
 java.lang.Object value(JexlContext jc)
          Gets the value of this node.
 
Methods inherited from class org.apache.commons.jexl.parser.SimpleNode
childrenAccept, dump, execute, interpret, jjtAddChild, jjtClose, jjtGetChild, jjtGetNumChildren, jjtGetParent, jjtOpen, jjtSetParent, setValue, toString, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

DUMMY

private static final Info DUMMY
dummy velocity info.


VAR_INDEX

private static final int VAR_INDEX
index of the loop variable.

See Also:
Constant Field Values

ITEMS_INDEX

private static final int ITEMS_INDEX
index of the items.

See Also:
Constant Field Values

STATEMENT_INDEX

private static final int STATEMENT_INDEX
index of the code to execute.

See Also:
Constant Field Values
Constructor Detail

ASTForeachStatement

public ASTForeachStatement(int id)
Create the node given an id.

Parameters:
id - node id.

ASTForeachStatement

public ASTForeachStatement(Parser p,
                           int id)
Create a node with the given parser and id.

Parameters:
p - a parser.
id - node id.
Method Detail

jjtAccept

public java.lang.Object jjtAccept(ParserVisitor visitor,
                                  java.lang.Object data)
Accept the visitor.

Specified by:
jjtAccept in interface Node
Overrides:
jjtAccept in class SimpleNode
Parameters:
visitor - a ParserVisitor.
data - data to be passed along to the visitor.
Returns:
the value from visiting.
See Also:
ParserVisitor.visit(org.apache.commons.jexl.parser.SimpleNode, java.lang.Object)

value

public java.lang.Object value(JexlContext jc)
                       throws java.lang.Exception
Gets the value of this node.

Overrides:
value in class SimpleNode
Parameters:
jc - the context to retrieve values from.
Returns:
the value of the node.
Throws:
java.lang.Exception - when evaluating the operands fails.