Package net.sf.saxon.expr.flwor
Class WhereClause
java.lang.Object
net.sf.saxon.expr.flwor.Clause
net.sf.saxon.expr.flwor.WhereClause
A "where" clause in a FLWOR expression
-
Field Summary
Fields inherited from class net.sf.saxon.expr.flwor.Clause
COUNT, FOR, GROUPBYCLAUSE, LET, ORDERBYCLAUSE, TRACE, WHERE, WINDOW -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddToPathMap(PathMap pathMap, PathMap.PathMapNodeSet pathMapNodeSet) Collect information about the navigation paths followed by this clause, for document projection purposescopy(FLWORExpression flwor, RebindingMap rebindings) Create a copy of this clausevoidDiagnostic print of expression structure.voidgatherVariableReferences(ExpressionVisitor visitor, Binding binding, List<VariableReference> references) Build a list of all references to a variables declared in this clauseintGet 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 streamvoidprocessOperands(OperandProcessor processor) Process the subexpressions of this clausevoidrefineVariableType(ExpressionVisitor visitor, List<VariableReference> references, Expression returnExpr) Supply improved type information to the expressions that contain references to the variables declared in this clausevoidsetPredicate(Expression predicate) voidsetRepeated(boolean repeated) Get a short string representation of the clausetoString()voidtypeCheck(ExpressionVisitor visitor, ContextItemStaticInfo contextInfo) Type-check the expressionMethods inherited from class net.sf.saxon.expr.flwor.Clause
containsNonInlineableVariableReference, getConfiguration, getLocation, getPackageData, getRangeVariables, isRepeated, optimize, setLocation, setPackageData
-
Constructor Details
-
WhereClause
-
-
Method Details
-
setRepeated
public void setRepeated(boolean repeated) - Overrides:
setRepeatedin classClause
-
getClauseKey
public int getClauseKey()Description copied from class:ClauseGet a keyword identifying what kind of clause this is- Specified by:
getClauseKeyin classClause- Returns:
- the kind of clause
-
getPredicate
-
setPredicate
-
copy
Description copied from class:ClauseCreate a copy of this clause -
typeCheck
public void typeCheck(ExpressionVisitor visitor, ContextItemStaticInfo contextInfo) throws XPathException Type-check the expression- Overrides:
typeCheckin classClause- Parameters:
visitor- the ExpressionVisitor, providing access to static context informationcontextInfo- static information about the dynamic context- Throws:
XPathException- if any error is detected
-
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:
getPullStreamin classClause- Parameters:
base- the input tuple streamcontext- the dynamic evaluation context- Returns:
- the output tuple stream
-
gatherVariableReferences
public void gatherVariableReferences(ExpressionVisitor visitor, Binding binding, List<VariableReference> references) Description copied from class:ClauseBuild a list of all references to a variables declared in this clause- Overrides:
gatherVariableReferencesin classClause- Parameters:
visitor- the expression visitorbinding- a variable declared in this clausereferences- the list of variable references, initially empty, to which the method will append
-
refineVariableType
public void refineVariableType(ExpressionVisitor visitor, List<VariableReference> references, Expression returnExpr) Description copied from class:ClauseSupply improved type information to the expressions that contain references to the variables declared in this clause- Overrides:
refineVariableTypein classClause- Parameters:
visitor- the expression visitorreferences- the list of variable referencesreturnExpr- the expression in the return clause
-
getPushStream
Get a push-mode tuple stream that implements the functionality of this clause, supplying its output to another tuple stream- Specified by:
getPushStreamin classClause- Parameters:
destination- the output tuple streamcontext- the dynamic evaluation context- Returns:
- the push tuple stream that implements the functionality of this clause of the FLWOR expression
-
processOperands
Process the subexpressions of this clause- Specified by:
processOperandsin classClause- Parameters:
processor- the expression processor used to process the subexpressions- Throws:
XPathException- if any error is detected
-
addToPathMap
Description copied from class:ClauseCollect information about the navigation paths followed by this clause, for document projection purposes- Specified by:
addToPathMapin classClause- Parameters:
pathMap- the path map in which the data is to be collectedpathMapNodeSet- the path map node set representing the paths to the context item
-
explain
Diagnostic print of expression structure. The abstract expression tree is written to the supplied output destination.- Specified by:
explainin classClause- Parameters:
out- the expression presenter used to display the structure- Throws:
XPathException
-
toShortString
Description copied from class:ClauseGet a short string representation of the clause- Overrides:
toShortStringin classClause- Returns:
- a recognizable string
-
toString
-