Package org.apache.xml.dtm.ref.sax2dtm
Class SAX2DTM2.PrecedingIterator
java.lang.Object
org.apache.xml.dtm.ref.DTMAxisIteratorBase
org.apache.xml.dtm.ref.DTMDefaultBaseIterators.InternalAxisIteratorBase
org.apache.xml.dtm.ref.sax2dtm.SAX2DTM2.PrecedingIterator
- All Implemented Interfaces:
Cloneable,DTMAxisIterator
- Direct Known Subclasses:
SAX2DTM2.TypedPrecedingIterator
- Enclosing class:
- SAX2DTM2
public class SAX2DTM2.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
Fields Modifier and Type Field Description protected int_markedDescendantprotected int_markedNodeprotected int_markedspprotected int_oldsp(not sure yet...protected int_sp(not sure yet...protected int[]_stackThe stack of start node + ancestors up to the root of the tree, which we must avoid.Fields inherited from class org.apache.xml.dtm.ref.DTMDefaultBaseIterators.InternalAxisIteratorBase
_currentNodeFields inherited from class org.apache.xml.dtm.ref.DTMAxisIteratorBase
_includeSelf, _isRestartable, _last, _position, _startNodeFields inherited from interface org.apache.xml.dtm.DTMAxisIterator
END -
Constructor Summary
Constructors Constructor Description PrecedingIterator() -
Method Summary
Modifier and Type Method Description DTMAxisIteratorcloneIterator()Returns a deep copy of this iterator.voidgotoMark()Restores the current node remembered by setMark().booleanisReverse()True if this iterator has a reversed axis.intnext()Get the next node in the iteration.DTMAxisIteratorreset()Resets the iterator to the last start node.voidsetMark()Remembers the current node for the next call to gotoMark().DTMAxisIteratorsetStartNode(int node)Set start to END should 'close' the iterator, i.e.Methods inherited from class org.apache.xml.dtm.ref.DTMAxisIteratorBase
getAxis, getLast, getNodeByPosition, getPosition, getStartNode, includeSelf, isDocOrdered, resetPosition, returnNode, setRestartable
-
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) -
_markedsp
protected int _markedsp -
_markedNode
protected int _markedNode -
_markedDescendant
protected int _markedDescendant
-
-
Constructor Details
-
PrecedingIterator
public PrecedingIterator()
-
-
Method Details
-
isReverse
public boolean isReverse()True if this iterator has a reversed axis.- Specified by:
isReversein interfaceDTMAxisIterator- Overrides:
isReversein classDTMAxisIteratorBase- Returns:
- true since this iterator is a reversed axis.
-
cloneIterator
Returns a deep copy of this iterator. The cloned iterator is not reset.- Specified by:
cloneIteratorin interfaceDTMAxisIterator- Overrides:
cloneIteratorin classDTMAxisIteratorBase- Returns:
- a deep copy of this iterator.
-
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.
-
next
public int next()Get the next node in the iteration.- Returns:
- The next node handle in the iteration, or END.
-
reset
Resets the iterator to the last start node.- Specified by:
resetin interfaceDTMAxisIterator- Overrides:
resetin classDTMAxisIteratorBase- Returns:
- A DTMAxisIterator, which may or may not be the same as this iterator.
-
setMark
public void setMark()Description copied from class:DTMDefaultBaseIterators.InternalAxisIteratorBaseRemembers the current node for the next call to gotoMark(). %REVIEW% Should this save _position too?- Specified by:
setMarkin interfaceDTMAxisIterator- Overrides:
setMarkin classDTMDefaultBaseIterators.InternalAxisIteratorBase
-
gotoMark
public void gotoMark()Description copied from class:DTMDefaultBaseIterators.InternalAxisIteratorBaseRestores the current node remembered by setMark(). %REVEIW% Should this restore _position too?- Specified by:
gotoMarkin interfaceDTMAxisIterator- Overrides:
gotoMarkin classDTMDefaultBaseIterators.InternalAxisIteratorBase
-