org.apache.xpath.axes

## Class BasicTestIterator

- java.lang.Object
- - org.apache.xpath.Expression
  - - org.apache.xpath.patterns.NodeTest
    - - org.apache.xpath.axes.PredicatedNodeTest
      - - org.apache.xpath.axes.LocPathIterator
        - - org.apache.xpath.axes.BasicTestIterator

All Implemented Interfaces:
  java.io.Serializable, java.lang.Cloneable, SourceLocator, DTMIterator, PathComponent, SubContextList, ExpressionNode, XPathVisitable

Direct Known Subclasses:
  ChildTestIterator, FilterExprIterator

    public abstract class BasicTestIterator
    extends LocPathIterator

Base for iterators that handle predicates. Does the basic next node logic, so all the derived iterator has to do is get the next node.

See Also:
  Serialized Form

### Field Summary

### Fields inherited from class org.apache.xpath.axes.LocPathIterator

`m_lastFetched`

### Fields inherited from class org.apache.xpath.patterns.NodeTest

`SCORE_NODETEST, SCORE_NONE, SCORE_NSWILD, SCORE_OTHER, SCORE_QNAME, SHOW_BYFUNCTION, SUPPORTS_PRE_STRIPPING, WILD`

### Fields inherited from interface org.apache.xml.dtm.DTMIterator

`FILTER_ACCEPT, FILTER_REJECT, FILTER_SKIP`

### Method Summary

Methods
`DTMIterator` `cloneWithReset()` Get a cloned Iterator that is reset to the beginning of the query.
`int` `nextNode()` Returns the next node in the set and advances the position of the iterator in the set.

### Methods inherited from class org.apache.xpath.axes.LocPathIterator

`allowDetachToRelease, asIterator, asNode, bool, callVisitors, detach, execute, executeCharsToContentHandler, getAnalysisBits, getAxis, getContext, getCurrentContextNode, getCurrentNode, getCurrentPos, getDTM, getDTMManager, getExpandEntityReferences, getFilter, getFoundLast, getIsTopLevel, getLastPos, getLength, getPrefixResolver, getRoot, getWhatToShow, getXPathContext, incrementCurrentPos, isDocOrdered, isFresh, isMutable, isNodesetExpr, item, previousNode, reset, runTo, setCurrentContextNode, setCurrentPos, setEnvironment, setIsTopLevel, setItem, setRoot, setShouldCacheNodes, size`

### Methods inherited from class org.apache.xpath.axes.PredicatedNodeTest

`acceptNode, callPredicateVisitors, canTraverseOutsideSubtree, clone, deepEquals, fixupVariables, getLocPathIterator, getPredicate, getPredicateCount, getPredicateIndex, getProximityPosition, getProximityPosition, initProximityPosition, isReverseAxes, resetProximityPositions, setLocPathIterator, setPredicateCount`

### Methods inherited from class org.apache.xpath.patterns.NodeTest

`debugWhatToShow, execute, execute, getDefaultScore, getLocalName, getNamespace, getNodeTypeTest, getStaticScore, initNodeTest, initNodeTest, setLocalName, setNamespace, setStaticScore, setWhatToShow`

### Methods inherited from class org.apache.xpath.Expression

`asIteratorRaw, assertion, error, execute, exprAddChild, exprGetChild, exprGetNumChildren, exprGetParent, exprSetParent, getColumnNumber, getExpressionOwner, getLineNumber, getPublicId, getSystemId, isStableNumber, num, warn, xstr`

### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface org.apache.xml.dtm.DTMIterator

`clone`

### Method Detail

#### nextNode

    public int nextNode()

Returns the next node in the set and advances the position of the iterator in the set. After a NodeIterator is created, the first call to nextNode() returns the first node in the set.

Specified by:
  `nextNode` in interface `DTMIterator`
Specified by:
  `nextNode` in class `LocPathIterator`
Returns:
  The next `Node` in the set being iterated over, or `null` if there are no more members in that set.

#### cloneWithReset

    public DTMIterator cloneWithReset()
                               throws java.lang.CloneNotSupportedException

Get a cloned Iterator that is reset to the beginning of the query.

Specified by:
  `cloneWithReset` in interface `DTMIterator`
Overrides:
  `cloneWithReset` in class `LocPathIterator`
Returns:
  A cloned NodeIterator set of the start of the query.
Throws:
  `java.lang.CloneNotSupportedException`