com.icl.saxon.om

## Class SingletonEnumeration

- java.lang.Object
- - com.icl.saxon.om.SingletonEnumeration

- All Implemented Interfaces:
    LastPositionFinder, AxisEnumeration, NodeEnumeration

      public class SingletonEnumeration
      extends java.lang.Object
      implements AxisEnumeration

  SingletonEnumeration: an enumeration of zero or one nodes

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `SingletonEnumeration(NodeInfo node)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and 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

    - #### SingletonEnumeration

          public SingletonEnumeration(NodeInfo node)

  - ### 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`

    - #### getLastPosition

          public int getLastPosition()

      Description copied from interface: `AxisEnumeration`
      Get the last position
      Specified by:
        `getLastPosition` in interface `LastPositionFinder`
      Specified by:
        `getLastPosition` in interface `AxisEnumeration`