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
-
Nested Class Summary
Nested classes/interfaces inherited from class net.sf.saxon.expr.flwor.Clause
Clause.ClauseName -
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 clauseGet 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, Outputter output, XPathContext context) Get a push-mode tuple stream that implements the functionality of this clause, supplying its output to another tuple streamGet information for inclusion in trace outputvoidprocessOperands(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
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 streamoutput- the destination for the resultcontext- 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- if any error occurs
-
toShortString
Description copied from class:ClauseGet a short string representation of the clause- Overrides:
toShortStringin classClause- Returns:
- a recognizable string
-
toString
-
getTraceInfo
Get information for inclusion in trace output- Overrides:
getTraceInfoin classClause- Returns:
- a map containing the properties to be output
-