Package 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.
-
-
Field Summary
Fields Modifier and Type Field Description protected NodeEnumeration
base
-
Constructor Summary
Constructors Constructor Description SortKeyEnumeration(Context context, NodeEnumeration _base, SortKeyDefinition[] sortkeys)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
compare(int a, int b)
Compare two nodes in sorted sequence (needed to implement the Sortable interface)int
getLastPosition()
Get the last positionboolean
hasMoreElements()
Determine whether there are more nodesboolean
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 orderNodeInfo
nextElement()
Get the next node, in sorted ordervoid
swap(int a, int b)
Swap two nodes (needed to implement the Sortable interface)
-
-
-
Field Detail
-
base
protected NodeEnumeration base
-
-
Constructor Detail
-
SortKeyEnumeration
public SortKeyEnumeration(Context context, NodeEnumeration _base, SortKeyDefinition[] sortkeys) throws XPathException
- Throws:
XPathException
-
-
Method Detail
-
hasMoreElements
public boolean hasMoreElements()
Determine whether there are more nodes- Specified by:
hasMoreElements
in interfaceNodeEnumeration
- Returns:
- true if there are more nodes
-
nextElement
public NodeInfo nextElement() throws XPathException
Get the next node, in sorted order- Specified by:
nextElement
in interfaceNodeEnumeration
- 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 interfaceNodeEnumeration
- 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 interfaceNodeEnumeration
- 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 interfaceNodeEnumeration
-
getLastPosition
public int getLastPosition() throws XPathException
Description copied from interface:LastPositionFinder
Get the last position- Specified by:
getLastPosition
in interfaceLastPositionFinder
- Throws:
XPathException
-
compare
public int compare(int a, int b)
Compare two nodes in sorted sequence (needed to implement the Sortable interface)
-
-