org.apache.commons.jxpath.ri.compiler
Class Path
java.lang.Object
org.apache.commons.jxpath.ri.compiler.Expression
org.apache.commons.jxpath.ri.compiler.Path
- Direct Known Subclasses:
- ExpressionPath, LocationPath
public abstract class Path
- extends Expression
- Version:
- $Revision: 1.14 $ $Date: 2004/04/01 02:55:32 $
- Author:
- Dmitri Plotnikov
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Path
public Path(Step[] steps)
getSteps
public Step[] getSteps()
computeContextDependent
public boolean computeContextDependent()
- Description copied from class:
Expression
- Implemented by subclasses and result is cached by isContextDependent()
- Specified by:
computeContextDependent
in class Expression
isSimplePath
public boolean isSimplePath()
- Recognized paths formatted as
foo/bar[3]/baz[@name = 'biz']
. The evaluation of such "simple" paths is optimized and
streamlined.
isSimpleStep
protected boolean isSimpleStep(Step step)
- A Step is "simple" if it takes one of these forms: ".", "/foo",
"@bar", "/foo[3]". If there are predicates, they should be
context independent for the step to still be considered simple.
areBasicPredicates
protected boolean areBasicPredicates(Expression[] predicates)
getSingleNodePointerForSteps
protected Pointer getSingleNodePointerForSteps(EvalContext context)
- Given a root context, walks a path therefrom and finds the
pointer to the first element matching the path.
evalSteps
protected EvalContext evalSteps(EvalContext context)
- Given a root context, walks a path therefrom and builds a context
that contains all nodes matching the path.
createContextForStep
protected EvalContext createContextForStep(EvalContext context,
int axis,
NodeTest nodeTest)
- Different axes are serviced by different contexts. This method
allocates the right context for the supplied step.