Class DescendantIterator
java.lang.Object
com.puppycrawl.tools.checkstyle.xpath.iterators.DescendantIterator
- All Implemented Interfaces:
Closeable,AutoCloseable,net.sf.saxon.om.SequenceIterator,net.sf.saxon.tree.iter.AxisIterator
Recursive-free implementation of the descendant axis iterator.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enumEnum defines starting node for iterator. -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate net.sf.saxon.tree.iter.AxisIteratorDescendant axis iterator.private final Queue<net.sf.saxon.om.NodeInfo>Queue for sibling nodes. -
Constructor Summary
ConstructorsConstructorDescriptionDescendantIterator(net.sf.saxon.om.NodeInfo start, DescendantIterator.StartWith startWith) Create an iterator over the "descendant" axis. -
Method Summary
Modifier and TypeMethodDescriptionnet.sf.saxon.om.NodeInfonext()Get the next item in the sequence.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface net.sf.saxon.om.SequenceIterator
close
-
Field Details
-
queue
Queue for sibling nodes. -
descendantEnum
Descendant axis iterator.
-
-
Constructor Details
-
DescendantIterator
Create an iterator over the "descendant" axis.- Parameters:
start- the initial context node.startWith- mode of the iterator, seeDescendantIterator.StartWith.
-
-
Method Details
-
next
Get the next item in the sequence.- Specified by:
nextin interfacenet.sf.saxon.tree.iter.AxisIterator- Specified by:
nextin interfacenet.sf.saxon.om.SequenceIterator- Returns:
- the next Item. If there are no more nodes, return null.
-