Package org.apache.xml.dtm.ref
Class DTMDefaultBaseIterators.DescendantIterator
java.lang.Object
org.apache.xml.dtm.ref.DTMAxisIteratorBase
org.apache.xml.dtm.ref.DTMDefaultBaseIterators.InternalAxisIteratorBase
org.apache.xml.dtm.ref.DTMDefaultBaseIterators.DescendantIterator
- All Implemented Interfaces:
Cloneable,DTMAxisIterator
- Direct Known Subclasses:
DTMDefaultBaseIterators.NthDescendantIterator,DTMDefaultBaseIterators.TypedDescendantIterator
- Enclosing class:
- DTMDefaultBaseIterators
public class DTMDefaultBaseIterators.DescendantIterator extends DTMDefaultBaseIterators.InternalAxisIteratorBase
Iterator that returns the descendants of a given node.
-
Field Summary
Fields inherited from class org.apache.xml.dtm.ref.DTMDefaultBaseIterators.InternalAxisIteratorBase
_currentNodeFields inherited from class org.apache.xml.dtm.ref.DTMAxisIteratorBase
_includeSelf, _isRestartable, _last, _markedNode, _position, _startNodeFields inherited from interface org.apache.xml.dtm.DTMAxisIterator
END -
Constructor Summary
Constructors Constructor Description DescendantIterator() -
Method Summary
Modifier and Type Method Description protected booleanisDescendant(int identity)Tell if this node identity is a descendant.intnext()Get the next node in the iteration.DTMAxisIteratorreset()Reset.DTMAxisIteratorsetStartNode(int node)Set start to END should 'close' the iterator, i.e.Methods inherited from class org.apache.xml.dtm.ref.DTMDefaultBaseIterators.InternalAxisIteratorBase
gotoMark, setMarkMethods inherited from class org.apache.xml.dtm.ref.DTMAxisIteratorBase
cloneIterator, getAxis, getLast, getNodeByPosition, getPosition, getStartNode, includeSelf, isDocOrdered, isReverse, resetPosition, returnNode, setRestartable
-
Constructor Details
-
DescendantIterator
public DescendantIterator()
-
-
Method Details
-
setStartNode
Set start to END should 'close' the iterator, i.e. subsequent call to next() should return END.- Parameters:
node- Sets the root of the iteration.- Returns:
- A DTMAxisIterator set to the start of the iteration.
-
isDescendant
protected boolean isDescendant(int identity)Tell if this node identity is a descendant. Assumes that the node info for the element has already been obtained. This one-sided test works only if the parent has been previously tested and is known to be a descendent. It fails if the parent is the _startNode's next sibling, or indeed any node that follows _startNode in document order. That may suffice for this iterator, but it's not really an isDescendent() test. %REVIEW% rename?- Parameters:
identity- The index number of the node in question.- Returns:
- true if the index is a descendant of _startNode.
-
next
public int next()Get the next node in the iteration.- Returns:
- The next node handle in the iteration, or END.
-
reset
Reset.- Specified by:
resetin interfaceDTMAxisIterator- Overrides:
resetin classDTMAxisIteratorBase- Returns:
- A DTMAxisIterator which has been reset to the start node, which may or may not be the same as this iterator.
-