org.apache.xalan.xsltc.dom
Class MultiValuedNodeHeapIterator
java.lang.Object
|
+--org.apache.xml.dtm.ref.DTMAxisIteratorBase
|
+--org.apache.xalan.xsltc.dom.MultiValuedNodeHeapIterator
- Direct Known Subclasses:
- KeyIndex.KeyIndexIterator, UnionIterator
- public abstract class MultiValuedNodeHeapIterator
- extends DTMAxisIteratorBase
MultiValuedNodeHeapIterator
takes a set of multi-valued
heap nodes and produces a merged NodeSet in document order with duplicates
removed.
Each multi-valued heap node (which might be a
DTMAxisIterator
, but that's not necessary)
generates DTM node handles in document order. The class
maintains the multi-valued heap nodes in a heap, not surprisingly, sorted by
the next DTM node handle available form the heap node.
After a DTM node is pulled from the heap node that's at the top of the
heap, the heap node is advanced to the next DTM node handle it makes
available, and the heap nature of the heap is restored to ensure the next
DTM node handle pulled is next in document order overall.
Methods inherited from class java.lang.Object |
equals,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait |
MultiValuedNodeHeapIterator
public MultiValuedNodeHeapIterator()
cloneIterator
public DTMAxisIterator cloneIterator()
- Overrides:
- cloneIterator in class DTMAxisIteratorBase
next
public int next()
setStartNode
public DTMAxisIterator setStartNode(int node)
setMark
public void setMark()
gotoMark
public void gotoMark()
reset
public DTMAxisIterator reset()
- Overrides:
- reset in class DTMAxisIteratorBase
Copyright © 2006 Apache XML Project. All Rights Reserved.