Class DTMDefaultBaseIterators.PrecedingIterator
java.lang.Object
org.loboevolution.apache.xml.dtm.ref.DTMAxisIteratorBase
org.loboevolution.apache.xml.dtm.ref.DTMDefaultBaseIterators.InternalAxisIteratorBase
org.loboevolution.apache.xml.dtm.ref.DTMDefaultBaseIterators.PrecedingIterator
- All Implemented Interfaces:
Cloneable
,DTMAxisIterator
- Enclosing class:
DTMDefaultBaseIterators
public class DTMDefaultBaseIterators.PrecedingIterator
extends DTMDefaultBaseIterators.InternalAxisIteratorBase
Iterator that returns preceding nodes of a given node. This includes the node set {root+1,
start-1}, but excludes all ancestors, attributes, and namespace nodes.
-
Field Summary
Modifier and TypeFieldDescriptionprotected int
(not sure yet...protected int
(not sure yet...protected int[]
The stack of start node + ancestors up to the root of the tree, which we must avoid.Fields inherited from class org.loboevolution.apache.xml.dtm.ref.DTMDefaultBaseIterators.InternalAxisIteratorBase
_currentNode
Fields inherited from class org.loboevolution.apache.xml.dtm.ref.DTMAxisIteratorBase
_includeSelf, _isRestartable, _position, _startNode
Fields inherited from interface org.loboevolution.apache.xml.dtm.DTMAxisIterator
END
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionReturns a deep copy of this iterator.boolean
int
next()
Get the next node in the iteration.void
reset()
Resets the iterator to the last start node.void
setStartNode
(int node) Set start to END should 'close' the iterator, i.e. subsequent call to next() should return END.Methods inherited from class org.loboevolution.apache.xml.dtm.ref.DTMAxisIteratorBase
includeSelf, resetPosition, returnNode
-
Field Details
-
_stack
protected int[] _stackThe stack of start node + ancestors up to the root of the tree, which we must avoid. -
_sp
protected int _sp(not sure yet... -sb) -
_oldsp
protected int _oldsp(not sure yet... -sb)
-
-
Constructor Details
-
PrecedingIterator
public PrecedingIterator()
-
-
Method Details
-
isReverse
public boolean isReverse()- Specified by:
isReverse
in interfaceDTMAxisIterator
- Overrides:
isReverse
in classDTMAxisIteratorBase
- Returns:
- true if this iterator has a reversed axis, else false
-
cloneIterator
Returns a deep copy of this iterator. Cloned iterators may not be restartable. The iterator being cloned may or may not become non-restartable as a side effect of this operation.- Specified by:
cloneIterator
in interfaceDTMAxisIterator
- Overrides:
cloneIterator
in classDTMAxisIteratorBase
- Returns:
- a deep copy of this iterator.
-
setStartNode
public void setStartNode(int node) 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.
-
next
public int next()Get the next node in the iteration.- Returns:
- The next node handle in the iteration, or END.
-
reset
public void reset()Resets the iterator to the last start node.- Specified by:
reset
in interfaceDTMAxisIterator
- Overrides:
reset
in classDTMAxisIteratorBase
-