org.apache.commons.jxpath.ri.axes
Class PredicateContext

java.lang.Object
  extended byorg.apache.commons.jxpath.ri.EvalContext
      extended byorg.apache.commons.jxpath.ri.axes.PredicateContext
All Implemented Interfaces:
ExpressionContext, java.util.Iterator

public class PredicateContext
extends EvalContext

EvalContext that checks predicates.

Version:
$Revision: 1.22 $ $Date: 2004/02/29 14:17:37 $
Author:
Dmitri Plotnikov

Field Summary
private  boolean done
           
private  PropertyPointer dynamicPropertyPointer
           
private  Expression expression
           
private  Expression nameTestExpression
           
 
Fields inherited from class org.apache.commons.jxpath.ri.EvalContext
parentContext, position, rootContext
 
Constructor Summary
PredicateContext(EvalContext parentContext, Expression expression)
           
 
Method Summary
 NodePointer getCurrentNodePointer()
          Returns the current context node.
 boolean nextNode()
          Returns true if there is another object in the current set.
 boolean nextSet()
          Returns true if there is another sets of objects to interate over.
 void reset()
          Sets current position = 0, which is the pre-iteration state.
 boolean setPosition(int position)
          Moves the current position to the specified index.
private  boolean setPositionStandard(int position)
           
private  boolean setupDynamicPropertyPointer()
          Used for an optimized access to dynamic properties using the "map[@name = 'name']" syntax
 
Methods inherited from class org.apache.commons.jxpath.ri.EvalContext
getContextNodeList, getContextNodePointer, getCurrentPosition, getDocumentOrder, getJXPathContext, getNodeSet, getPosition, getRootContext, getSingleNodePointer, getValue, hasNext, isChildOrderingRequired, next, remove, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

expression

private Expression expression

done

private boolean done

nameTestExpression

private Expression nameTestExpression

dynamicPropertyPointer

private PropertyPointer dynamicPropertyPointer
Constructor Detail

PredicateContext

public PredicateContext(EvalContext parentContext,
                        Expression expression)
Method Detail

nextNode

public boolean nextNode()
Description copied from class: EvalContext
Returns true if there is another object in the current set. Switches the current position and node to the next object.

Specified by:
nextNode in class EvalContext

setupDynamicPropertyPointer

private boolean setupDynamicPropertyPointer()
Used for an optimized access to dynamic properties using the "map[@name = 'name']" syntax


setPosition

public boolean setPosition(int position)
Description copied from class: EvalContext
Moves the current position to the specified index. Used with integer predicates to quickly get to the n'th element of the node set. Returns false if the position is out of the node set range. You can call it with 0 as the position argument to restart the iteration.

Overrides:
setPosition in class EvalContext

getCurrentNodePointer

public NodePointer getCurrentNodePointer()
Description copied from class: EvalContext
Returns the current context node. Undefined before the beginning of the iteration.

Specified by:
getCurrentNodePointer in class EvalContext

reset

public void reset()
Description copied from class: EvalContext
Sets current position = 0, which is the pre-iteration state.

Overrides:
reset in class EvalContext

nextSet

public boolean nextSet()
Description copied from class: EvalContext
Returns true if there is another sets of objects to interate over. Resets the current position and node.

Overrides:
nextSet in class EvalContext

setPositionStandard

private boolean setPositionStandard(int position)