Package net.sf.saxon.expr.flwor
Class OrderByClausePush
java.lang.Object
net.sf.saxon.expr.flwor.TuplePush
net.sf.saxon.expr.flwor.OrderByClausePush
- All Implemented Interfaces:
Sortable
Represents the tuple stream delivered by an "order by" clause. This sorts the tuple stream supplied
as its input, and outputs the same tuples but in sorted order.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected AtomicComparer[]
(package private) XPathContext
(package private) int
-
Constructor Summary
ConstructorsConstructorDescriptionOrderByClausePush
(TuplePush destination, TupleExpression tupleExpr, OrderByClause orderBy, XPathContext context) -
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
Close the tuple stream, indicating that no more tuples will be deliveredint
compare
(int a, int b) Compare two objects within this Sortable, identified by their position.void
processTuple
(XPathContext context) Process the next tuple.void
swap
(int a, int b) Swap two objects within this Sortable, identified by their position.
-
Field Details
-
comparers
-
context
XPathContext context -
position
int position
-
-
Constructor Details
-
OrderByClausePush
public OrderByClausePush(TuplePush destination, TupleExpression tupleExpr, OrderByClause orderBy, XPathContext context)
-
-
Method Details
-
processTuple
Process the next tuple.- Specified by:
processTuple
in classTuplePush
- Parameters:
context
- the dynamic evaluation context- Throws:
XPathException
- if a dynamic error occurs
-
compare
public int compare(int a, int b) Compare two objects within this Sortable, identified by their position. -
swap
public void swap(int a, int b) Swap two objects within this Sortable, identified by their position. -
close
Close the tuple stream, indicating that no more tuples will be delivered- Overrides:
close
in classTuplePush
- Throws:
XPathException
- if a dynamic error occurs
-