public class WhereClause extends Clause
COUNT, FOR, GROUPBYCLAUSE, LET, ORDERBYCLAUSE, TRACE, WHERE, WINDOW| Constructor | Description |
|---|---|
WhereClause(Expression predicate) |
| Modifier and Type | Method | Description |
|---|---|---|
WhereClause |
copy() |
Create a copy of this clause
|
void |
explain(ExpressionPresenter out) |
Diagnostic print of expression structure.
|
void |
gatherVariableReferences(ExpressionVisitor visitor,
Binding binding,
java.util.List<VariableReference> references) |
Build a list of all references to a variables declared in this clause
|
Expression |
getBaseExpression() |
|
int |
getClauseKey() |
Get a keyword identifying what kind of clause this is
|
Expression |
getPredicate() |
|
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
|
void |
processSubExpressions(ExpressionProcessor processor) |
Process the subexpressions of this clause
|
void |
refineVariableType(ExpressionVisitor visitor,
java.util.List<VariableReference> references,
Expression returnExpr) |
Supply improved type information to the expressions that contain references to the variables declared in this clause
|
void |
setPredicate(Expression predicate) |
|
java.lang.String |
toString() |
|
void |
typeCheck(ExpressionVisitor visitor) |
Type-check the expression
|
containsNonInlineableVariableReference, getLocationId, getRangeVariables, optimize, setLocationIdpublic WhereClause(Expression predicate)
public int getClauseKey()
ClausegetClauseKey in class Clausepublic Expression getPredicate()
public void setPredicate(Expression predicate)
public WhereClause copy()
Clausepublic void typeCheck(ExpressionVisitor visitor) throws XPathException
typeCheck in class Clausevisitor - the ExpressionVisitor, providing access to static context informationXPathException - if any error is detectedpublic TuplePull getPullStream(TuplePull base, XPathContext context)
getPullStream in class Clausebase - the input tuple streamcontext - the dynamic evaluation contextpublic void gatherVariableReferences(ExpressionVisitor visitor, Binding binding, java.util.List<VariableReference> references)
ClausegatherVariableReferences in class Clausevisitor - the expression visitorbinding - a variable declared in this clausereferences - the list of variable references, initially empty, to which the method will appendpublic void refineVariableType(ExpressionVisitor visitor, java.util.List<VariableReference> references, Expression returnExpr)
ClauserefineVariableType in class Clausevisitor - the expression visitorreferences - the list of variable referencesreturnExpr - the expression in the return clausepublic TuplePush getPushStream(TuplePush destination, XPathContext context)
getPushStream in class Clausedestination - the output tuple streamcontext - the dynamic evaluation contextpublic void processSubExpressions(ExpressionProcessor processor) throws XPathException
processSubExpressions in class Clauseprocessor - the expression processor used to process the subexpressionsXPathException - if any error is detectedpublic Expression getBaseExpression()
public void explain(ExpressionPresenter out)
public java.lang.String toString()
toString in class java.lang.Object