Class OneStepIteratorForward

All Implemented Interfaces:
Serializable, Cloneable, SourceLocator, DTMIterator, PathComponent, SubContextList, ExpressionNode, XPathVisitable
Direct Known Subclasses:
KeyIterator

public class OneStepIteratorForward extends ChildTestIterator
This class implements a general iterator for those LocationSteps with only one step, and perhaps a predicate, that only go forward (i.e. it can not be used with ancestors, preceding, etc.)
See Also:
  • Constructor Details

    • OneStepIteratorForward

      public OneStepIteratorForward(int axis)
      Create a OneStepIterator object that will just traverse the self axes.
      Parameters:
      axis - One of the org.apache.xml.dtm.Axis integers.
      Throws:
      TransformerException
  • Method Details

    • setRoot

      public void setRoot(int context, Object environment)
      Initialize the context values for this expression after it is cloned.
      Specified by:
      setRoot in interface DTMIterator
      Overrides:
      setRoot in class ChildTestIterator
      Parameters:
      context - The XPath runtime context for this transformation.
      environment - The environment object. The environment in which this iterator operates, which should provide:
      • a node (the context node... same value as "root" defined below)
      • a pair of non-zero positive integers (the context position and the context size)
      • a set of variable bindings
      • a function library
      • the set of namespace declarations in scope for the expression.
        • At this time the exact implementation of this environment is application dependent. Probably a proper interface will be created fairly soon.

    • getAxis

      public int getAxis()
      Returns the axis being iterated, if it is known.
      Specified by:
      getAxis in interface DTMIterator
      Overrides:
      getAxis in class ChildTestIterator
      Returns:
      Axis.CHILD, etc., or -1 if the axis is not known or is of multiple types.
    • deepEquals

      public boolean deepEquals(Expression expr)
      Description copied from class: Expression
      Compare this object with another object and see if they are equal, include the sub heararchy.
      Overrides:
      deepEquals in class PredicatedNodeTest
      Parameters:
      expr - Another expression object.
      Returns:
      true if this objects class and the expr object's class are the same, and the data contained within both objects are considered equal.
      See Also: