Class PrecedingIterator

  • All Implemented Interfaces:
    Closeable, AutoCloseable, net.sf.saxon.om.SequenceIterator, net.sf.saxon.tree.iter.AxisIterator

    public class PrecedingIterator
    extends Object
    implements net.sf.saxon.tree.iter.AxisIterator
    Recursive-free implementation of the preceding axis iterator.
    • Field Detail

      • ancestorEnum

        private final net.sf.saxon.tree.iter.AxisIterator ancestorEnum
        Ancestor axis iterator.
      • previousSiblingEnum

        private net.sf.saxon.tree.iter.AxisIterator previousSiblingEnum
        Preceding-sibling axis iterator.
      • descendantEnum

        private net.sf.saxon.tree.iter.AxisIterator descendantEnum
        Descendant axis iterator.
    • Constructor Detail

      • PrecedingIterator

        public PrecedingIterator​(net.sf.saxon.om.NodeInfo start)
        Create an iterator over the "preceding" axis.
        Parameters:
        start - the initial context node.
    • Method Detail

      • next

        public net.sf.saxon.om.NodeInfo next()
        Get the next item in the sequence.
        Specified by:
        next in interface net.sf.saxon.tree.iter.AxisIterator
        Specified by:
        next in interface net.sf.saxon.om.SequenceIterator
        Returns:
        the next Item. If there are no more nodes, return null.