net.sf.saxon.expr.flwor
Class OrderByClause

java.lang.Object
  extended by net.sf.saxon.expr.flwor.Clause
      extended by net.sf.saxon.expr.flwor.OrderByClause

public class OrderByClause
extends Clause

This class represents an "order by" clause in a FLWOR expression


Field Summary
 
Fields inherited from class net.sf.saxon.expr.flwor.Clause
COUNT, FOR, GROUPBYCLAUSE, LET, ORDERBYCLAUSE, WHERE, WINDOW
 
Constructor Summary
OrderByClause(SortKeyDefinition[] sortKeys, TupleExpression tupleExpression)
           
 
Method Summary
 OrderByClause copy()
           
 AtomicValue evaluateSortKey(int n, XPathContext c)
          Callback for evaluating the sort keys
 void explain(ExpressionPresenter out)
          Diagnostic print of expression structure.
 AtomicComparer[] getAtomicComparers()
           
 int getClauseKey()
          Get a keyword identifying what kind of clause this is
 TuplePull getPullStream(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 modifies
 TuplePush getPushStream(TuplePush destination, XPathContext context)
          Get a push-mode tuple stream that implements the functionality of this clause, supplying its output to another tuple stream
 SortKeyDefinition[] getSortKeyDefinitions()
           
 void processSubExpressions(ExpressionProcessor processor)
          Process the subexpressions of this clause
 String toString()
           
 void typeCheck(ExpressionVisitor visitor)
          Type-check the expression
 
Methods inherited from class net.sf.saxon.expr.flwor.Clause
gatherVariableReferences, getRangeVariables, optimize, refineVariableType
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

OrderByClause

public OrderByClause(SortKeyDefinition[] sortKeys,
                     TupleExpression tupleExpression)
Method Detail

getClauseKey

public int getClauseKey()
Description copied from class: Clause
Get a keyword identifying what kind of clause this is

Specified by:
getClauseKey in class Clause
Returns:
the kind of clause

copy

public OrderByClause copy()
Specified by:
copy in class Clause

getSortKeyDefinitions

public SortKeyDefinition[] getSortKeyDefinitions()

getAtomicComparers

public AtomicComparer[] getAtomicComparers()

getPullStream

public TuplePull getPullStream(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 modifies

Specified by:
getPullStream in class Clause
Parameters:
base - the input tuple stream
context -
Returns:
the output tuple stream

getPushStream

public TuplePush getPushStream(TuplePush destination,
                               XPathContext context)
Get a push-mode tuple stream that implements the functionality of this clause, supplying its output to another tuple stream

Specified by:
getPushStream in class Clause
Parameters:
destination - the output tuple stream
context -
Returns:
the push tuple stream that implements the functionality of this clause of the FLWOR expression

processSubExpressions

public void processSubExpressions(ExpressionProcessor processor)
                           throws XPathException
Process the subexpressions of this clause

Specified by:
processSubExpressions in class Clause
Parameters:
processor - the expression processor used to process the subexpressions
Throws:
XPathException - if any error is detected

typeCheck

public void typeCheck(ExpressionVisitor visitor)
               throws XPathException
Type-check the expression

Overrides:
typeCheck in class Clause
Parameters:
visitor - the ExpressionVisitor, providing access to static context information
Throws:
XPathException - if any error is detected

explain

public void explain(ExpressionPresenter out)
Diagnostic print of expression structure. The abstract expression tree is written to the supplied output destination.

Specified by:
explain in class Clause
Parameters:
out - the expression presenter used to display the structure

toString

public String toString()
Overrides:
toString in class Object

evaluateSortKey

public AtomicValue evaluateSortKey(int n,
                                   XPathContext c)
                            throws XPathException
Callback for evaluating the sort keys

Throws:
XPathException


Copyright (c) 2004-2011 Saxonica Limited. All rights reserved.