Class SortKeyEnumeration

java.lang.Object
com.icl.saxon.expr.SortKeyEnumeration
All Implemented Interfaces:
LastPositionFinder, NodeEnumeration, Sortable

public final class SortKeyEnumeration extends Object implements NodeEnumeration, LastPositionFinder, Sortable
A SortKeyEnumeration is NodeEnumeration that delivers the nodes sorted according to a specified sort key.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected NodeEnumeration
     
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    int
    compare(int a, int b)
    Compare two nodes in sorted sequence (needed to implement the Sortable interface)
    int
    Get the last position
    boolean
    Determine whether there are more nodes
    boolean
    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
    Determine whether the nodes returned by this enumeration are known to be in reverse document order.
    boolean
    Determine whether the nodes returned by this enumeration are known to be in document order
    Get the next node, in sorted order
    void
    swap(int a, int b)
    Swap two nodes (needed to implement the Sortable interface)

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

  • Constructor Details

  • Method Details

    • hasMoreElements

      public boolean hasMoreElements()
      Determine whether there are more nodes
      Specified by:
      hasMoreElements in interface NodeEnumeration
      Returns:
      true if there are more nodes
    • nextElement

      public NodeInfo nextElement() throws XPathException
      Get the next node, in sorted order
      Specified by:
      nextElement in interface NodeEnumeration
      Returns:
      the next NodeInfo
      Throws:
      XPathException
    • 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() throws XPathException
      Description copied from interface: LastPositionFinder
      Get the last position
      Specified by:
      getLastPosition in interface LastPositionFinder
      Throws:
      XPathException
    • compare

      public int compare(int a, int b)
      Compare two nodes in sorted sequence (needed to implement the Sortable interface)
      Specified by:
      compare in interface Sortable
      Returns:
      invalid input: '<'0 if obj[a]invalid input: '<'obj[b], 0 if obj[a]=obj[b], >0 if obj[a]>obj[b]
    • swap

      public void swap(int a, int b)
      Swap two nodes (needed to implement the Sortable interface)
      Specified by:
      swap in interface Sortable