org.apache.commons.jexl.parser

Class ASTReference

public class ASTReference extends SimpleNode

reference - any variable expression.

Version: $Id: ASTReference.java 398272 2006-04-30 03:14:01Z dion $

Field Summary
protected SimpleNoderoot
first variable in the expression.
Constructor Summary
ASTReference(int id)
Create the node given an id.
ASTReference(Parser p, int id)
Create a node with the given parser and id.
Method Summary
Objectexecute(Object obj, JexlContext jc)
evaluate each piece of the reference. e.g. foo.bar.woogie[2].name, foo is our 'root', and we need to evaluate 'bar.woogie[2].name' relative to foo.
StringgetRootString()
Gets the variable name of root.
ObjectjjtAccept(ParserVisitor visitor, Object data)
voidjjtClose()
Store the first child as root.
Objectvalue(JexlContext jc)

Field Detail

root

protected SimpleNode root
first variable in the expression.

Constructor Detail

ASTReference

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

Parameters: id node id.

ASTReference

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

Parameters: p a parser. id node id.

Method Detail

execute

public Object execute(Object obj, JexlContext jc)
evaluate each piece of the reference. e.g. foo.bar.woogie[2].name, foo is our 'root', and we need to evaluate 'bar.woogie[2].name' relative to foo.

Parameters: jc the JexlContext to evaluate against. obj not used. root.value(jc) is used instead.

Returns: the value of the array expression.

Throws: Exception on any error

getRootString

public String getRootString()
Gets the variable name of root.

Returns: the identifier.

Throws: Exception on any error

See Also: getIdentifierString getIdentifierString

jjtAccept

public Object jjtAccept(ParserVisitor visitor, Object data)
{@inheritDoc }

jjtClose

public void jjtClose()
Store the first child as root.

value

public Object value(JexlContext jc)
{@inheritDoc }
Copyright © 2003-2011 The Apache Software Foundation. All Rights Reserved.