com.icl.saxon.expr
Class SortKeyEnumeration
java.lang.Object
|
+--com.icl.saxon.expr.SortKeyEnumeration
- All Implemented Interfaces:
- LastPositionFinder, NodeEnumeration, Sortable
- public final class SortKeyEnumeration
- extends java.lang.Object
- implements NodeEnumeration, LastPositionFinder, Sortable
A SortKeyEnumeration is NodeEnumeration that delivers the nodes sorted according to
a specified sort key.
Method Summary |
int |
compare(int a,
int b)
Compare two nodes in sorted sequence
(needed to implement the Sortable interface) |
int |
getLastPosition()
Get the last position |
boolean |
hasMoreElements()
Determine whether there are more nodes |
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 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 |
base
protected NodeEnumeration base
SortKeyEnumeration
public SortKeyEnumeration(Context context,
NodeEnumeration _base,
SortKeyDefinition[] sortkeys)
throws XPathException
hasMoreElements
public boolean hasMoreElements()
- Determine whether there are more nodes
- Specified by:
hasMoreElements
in interface NodeEnumeration
- Following copied from interface:
com.icl.saxon.om.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
- Following copied from interface:
com.icl.saxon.om.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
- Following copied from interface:
com.icl.saxon.om.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
- Following copied from interface:
com.icl.saxon.om.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
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
- Following copied from interface:
com.icl.saxon.sort.Sortable
- Returns:
- <0 if obj[a]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