Package net.sf.saxon.expr.flwor
Class OrderByClause
java.lang.Object
net.sf.saxon.expr.flwor.Clause
net.sf.saxon.expr.flwor.OrderByClause
This class represents an "order by" clause in a FLWOR expression
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) AtomicComparer[]
(package private) SortKeyDefinition[]
(package private) TupleExpression
Fields inherited from class net.sf.saxon.expr.flwor.Clause
COUNT, FOR, GROUPBYCLAUSE, LET, ORDERBYCLAUSE, TRACE, WHERE, WINDOW
-
Constructor Summary
ConstructorsConstructorDescriptionOrderByClause
(SortKeyDefinition[] sortKeys, TupleExpression tupleExpression) -
Method Summary
Modifier and TypeMethodDescriptionboolean
Determine whether the clause contains a reference to a local variable binding that cannot be inlinedcopy()
Create a copy of this clauseevaluateSortKey
(int n, XPathContext c) Callback for evaluating the sort keysvoid
Diagnostic print of expression structure.int
Get a keyword identifying what kind of clause this isgetPullStream
(TuplePull base, XPathContext context) Get a tuple stream that implements the functionality of this clause, taking its input from another tuple stream which this clause modifiesgetPushStream
(TuplePush destination, XPathContext context) Get a push-mode tuple stream that implements the functionality of this clause, supplying its output to another tuple streamvoid
processSubExpressions
(ExpressionProcessor processor) Process the subexpressions of this clausetoString()
void
typeCheck
(ExpressionVisitor visitor) Type-check the expressionMethods inherited from class net.sf.saxon.expr.flwor.Clause
gatherVariableReferences, getLocationId, getRangeVariables, optimize, refineVariableType, setLocationId
-
Field Details
-
sortKeys
SortKeyDefinition[] sortKeys -
comparators
AtomicComparer[] comparators -
tupleExpression
TupleExpression tupleExpression
-
-
Constructor Details
-
OrderByClause
-
-
Method Details
-
getClauseKey
public int getClauseKey()Description copied from class:Clause
Get a keyword identifying what kind of clause this is- Specified by:
getClauseKey
in classClause
- Returns:
- the kind of clause
-
containsNonInlineableVariableReference
Description copied from class:Clause
Determine whether the clause contains a reference to a local variable binding that cannot be inlined- Overrides:
containsNonInlineableVariableReference
in classClause
- Parameters:
binding
- the binding for the local variable in question- Returns:
- true if this clause uses the variable in a way that does not permit inlining
-
copy
Description copied from class:Clause
Create a copy of this clause -
getSortKeyDefinitions
-
getAtomicComparers
-
getPullStream
Get a tuple stream that implements the functionality of this clause, taking its input from another tuple stream which this clause modifies- Specified by:
getPullStream
in classClause
- Parameters:
base
- the input tuple streamcontext
-- Returns:
- the output tuple stream
-
getPushStream
Get a push-mode tuple stream that implements the functionality of this clause, supplying its output to another tuple stream- Specified by:
getPushStream
in classClause
- Parameters:
destination
- the output tuple streamcontext
-- Returns:
- the push tuple stream that implements the functionality of this clause of the FLWOR expression
-
processSubExpressions
Process the subexpressions of this clause- Specified by:
processSubExpressions
in classClause
- Parameters:
processor
- the expression processor used to process the subexpressions- Throws:
XPathException
- if any error is detected
-
typeCheck
Type-check the expression- Overrides:
typeCheck
in classClause
- Parameters:
visitor
- the ExpressionVisitor, providing access to static context information- Throws:
XPathException
- if any error is detected
-
explain
Diagnostic print of expression structure. The abstract expression tree is written to the supplied output destination. -
toString
-
evaluateSortKey
Callback for evaluating the sort keys- Throws:
XPathException
-