|
||||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES All Classes | |||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--org.apache.commons.jexl.parser.SimpleNode | +--org.apache.commons.jexl.parser.ASTArrayAccess
Like an ASTIdentifier, but with array access allowed. $foo[2]
Field Summary |
---|
Fields inherited from class org.apache.commons.jexl.parser.SimpleNode |
---|
children, id, parent, parser |
Constructor Summary | |
---|---|
ASTArrayAccess(int id)
Create the node given an id. |
|
ASTArrayAccess(Parser p,
int id)
Create a node with the given parser and id. |
Method Summary | |
---|---|
static Object |
evaluateExpr(Object o,
Object loc)
Evaluate the Array expression 'loc' on the given object, o. |
Object |
execute(Object obj,
JexlContext jc)
evaluate array access upon a base object. |
String |
getIdentifierString()
Gets the variable name piece of the expression. |
Object |
jjtAccept(ParserVisitor visitor,
Object data)
Accept the visitor. |
Object |
value(JexlContext jc)
Gets the value of this node. |
Methods inherited from class org.apache.commons.jexl.parser.SimpleNode |
---|
childrenAccept, dump, 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 |
Constructor Detail |
public ASTArrayAccess(int id)
id
- node id.public ASTArrayAccess(Parser p, int id)
p
- a parser.id
- node id.Method Detail |
public Object jjtAccept(ParserVisitor visitor, Object data)
jjtAccept
in interface Node
jjtAccept
in class SimpleNode
visitor
- a ParserVisitor
.data
- data to be passed along to the visitor.
ParserVisitor.visit(org.apache.commons.jexl.parser.SimpleNode, java.lang.Object)
public Object execute(Object obj, JexlContext jc) throws Exception
execute
in class SimpleNode
jc
- the JexlContext
to evaluate against.obj
- not used.
Exception
- on any errorpublic Object value(JexlContext jc) throws Exception
value
in class SimpleNode
jc
- the context to retrieve values from.
Exception
- when evaluating the operands fails.public static Object evaluateExpr(Object o, Object loc) throws Exception
2
is 'loc' and a
is 'o'.
If o or loc are null, null is returned.
If o is a Map, o.get(loc) is returned.
If o is a List, o.get(loc) is returned. loc must resolve to an int value.
If o is an Array, o[loc] is returned. loc must resolve to an int value.
Otherwise loc is treated as a bean property of o.
o
- an object to be accessed using the array operator or '.' operator.loc
- the index of the object to be returned.
Exception
- on any error.public String getIdentifierString()
ASTIdentifier.getIdentifierString().
|
||||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES All Classes | |||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |