org.apache.commons.jxpath.ri.compiler
Class ExpressionPath

java.lang.Object
  |
  +--org.apache.commons.jxpath.ri.compiler.Expression
        |
        +--org.apache.commons.jxpath.ri.compiler.Path
              |
              +--org.apache.commons.jxpath.ri.compiler.ExpressionPath

public class ExpressionPath
extends Path

An element of the parse tree that represents an expression path, which is a path that starts with an expression like a function call: getFoo(.) /bar.

Version:
$Revision: 1.8 $ $Date: 2003/03/11 00:59:22 $
Author:
Dmitri Plotnikov

Inner classes inherited from class org.apache.commons.jxpath.ri.compiler.Expression
Expression.PointerIterator, Expression.ValueIterator
 
Fields inherited from class org.apache.commons.jxpath.ri.compiler.Expression
NOT_A_NUMBER, ONE, ZERO
 
Constructor Summary
ExpressionPath(Expression expression, Expression[] predicates, Step[] steps)
           
 
Method Summary
 java.lang.Object compute(EvalContext context)
           
 boolean computeContextDependent()
          Returns true if the root expression or any of the predicates or the path steps are context dependent.
 java.lang.Object computeValue(EvalContext context)
          Evaluates the expression.
protected  java.lang.Object expressionPath(EvalContext evalContext, boolean firstMatch)
          Walks an expression path (a path that starts with an expression)
 Expression getExpression()
           
 Expression[] getPredicates()
          Predicates are the expressions in brackets that may follow the root expression of the path.
 boolean isSimpleExpressionPath()
          Recognized paths formatted as $x[3]/foo[2].
 java.lang.String toString()
           
 
Methods inherited from class org.apache.commons.jxpath.ri.compiler.Path
areBasicPredicates, createContextForStep, evalSteps, getSingleNodePointerForSteps, getSteps, isSimplePath
 
Methods inherited from class org.apache.commons.jxpath.ri.compiler.Expression
isContextDependent, iterate, iteratePointers
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ExpressionPath

public ExpressionPath(Expression expression,
                      Expression[] predicates,
                      Step[] steps)
Method Detail

getExpression

public Expression getExpression()

getPredicates

public Expression[] getPredicates()
Predicates are the expressions in brackets that may follow the root expression of the path.

computeContextDependent

public boolean computeContextDependent()
Returns true if the root expression or any of the predicates or the path steps are context dependent.
Overrides:
computeContextDependent in class Path

isSimpleExpressionPath

public boolean isSimpleExpressionPath()
Recognized paths formatted as $x[3]/foo[2]. The evaluation of such "simple" paths is optimized and streamlined.

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

compute

public java.lang.Object compute(EvalContext context)
Overrides:
compute in class Expression

computeValue

public java.lang.Object computeValue(EvalContext context)
Description copied from class: Expression
Evaluates the expression. If the result is a node set, returns the first element of the node set.
Overrides:
computeValue in class Expression

expressionPath

protected java.lang.Object expressionPath(EvalContext evalContext,
                                          boolean firstMatch)
Walks an expression path (a path that starts with an expression)


Copyright © 2001-2003 Apache Software Foundation. All Rights Reserved.