Class ArrayEnumeration

  • All Implemented Interfaces:
    LastPositionFinder, AxisEnumeration, NodeEnumeration

    final class ArrayEnumeration
    extends java.lang.Object
    implements AxisEnumeration
    ArrayEnumeration is used to enumerate nodes held in an array. It is used only to enumerate the children of a node: this is assumed in the values returned by isSorted(), etc.
    Author:
    Michael H. Kay
    • Field Summary

      Fields 
      Modifier and Type Field Description
      (package private) int index  
      (package private) NodeInfo[] nodes  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      int getLastPosition()
      Get the last position
      boolean hasMoreElements()
      Determine whether there are more nodes to come.
      boolean isPeer()
      Determine whether the nodes returned by this enumeration are known to be peers, that is, no node is a descendant or ancestor of another node.
      boolean isReverseSorted()
      Determine whether the nodes returned by this enumeration are known to be in reverse document order.
      boolean isSorted()
      Determine whether the nodes returned by this enumeration are known to be in document order
      NodeInfo nextElement()
      Get the next node in sequence.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ArrayEnumeration

        public ArrayEnumeration​(NodeInfo[] nodes)
    • Method Detail

      • hasMoreElements

        public boolean hasMoreElements()
        Description copied from interface: AxisEnumeration
        Determine whether there are more nodes to come.
        (Note the term "Element" is used here in the sense of the standard Java Enumeration class, it has nothing to do with XML elements).
        Specified by:
        hasMoreElements in interface AxisEnumeration
        Specified by:
        hasMoreElements in interface NodeEnumeration
        Returns:
        true if there are more nodes
      • nextElement

        public NodeInfo nextElement()
        Description copied from interface: AxisEnumeration
        Get the next node in sequence.
        (Note the term "Element" is used here in the sense of the standard Java Enumeration class, it has nothing to do with XML elements).
        Specified by:
        nextElement in interface AxisEnumeration
        Specified by:
        nextElement in interface NodeEnumeration
        Returns:
        the next NodeInfo
      • isSorted

        public boolean isSorted()
        Description copied from interface: NodeEnumeration
        Determine whether the nodes returned by this enumeration are known to be in document order
        Specified by:
        isSorted in interface NodeEnumeration
        Returns:
        true if the nodes are guaranteed to be in document order.
      • isReverseSorted

        public boolean isReverseSorted()
        Description copied from interface: NodeEnumeration
        Determine whether the nodes returned by this enumeration are known to be in reverse document order.
        Specified by:
        isReverseSorted in interface NodeEnumeration
        Returns:
        true if the nodes are guaranteed to be in document order.
      • isPeer

        public boolean isPeer()
        Description copied from interface: NodeEnumeration
        Determine whether the nodes returned by this enumeration are known to be peers, that is, no node is a descendant or ancestor of another node. This significance of this property is that if a peer enumeration is applied to each node in a set derived from another peer enumeration, and if both enumerations are sorted, then the result is also sorted.
        Specified by:
        isPeer in interface NodeEnumeration