Package net.sf.saxon.expr.flwor
Class TraceClause
- java.lang.Object
-
- net.sf.saxon.expr.flwor.Clause
-
- net.sf.saxon.expr.flwor.TraceClause
-
public class TraceClause extends Clause
A "trace" clause in a FLWOR expression, added by a TraceCodeInjector for diagnostic tracing, debugging, profiling or similar purposes.
-
-
Field Summary
-
Fields inherited from class net.sf.saxon.expr.flwor.Clause
COUNT, FOR, GROUPBYCLAUSE, LET, ORDERBYCLAUSE, TRACE, WHERE, WINDOW
-
-
Constructor Summary
Constructors Constructor Description TraceClause(Clause target, NamespaceResolver nsResolver, Container container)
Create a traceClause
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description TraceClause
copy()
Create a copy of this clausevoid
explain(ExpressionPresenter out)
Diagnostic print of expression structure.int
getClauseKey()
Get a keyword identifying what kind of clause this isNamespaceResolver
getNamespaceResolver()
Get the namespace bindings from the static context of the clauseTuplePull
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 modifiesTuplePush
getPushStream(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 clausevoid
setNamespaceResolver(NamespaceResolver nsResolver)
Set the namespace bindings from the static context of the clausejava.lang.String
toString()
-
Methods inherited from class net.sf.saxon.expr.flwor.Clause
containsNonInlineableVariableReference, gatherVariableReferences, getLocationId, getRangeVariables, optimize, refineVariableType, setLocationId, typeCheck
-
-
-
-
Constructor Detail
-
TraceClause
public TraceClause(Clause target, NamespaceResolver nsResolver, Container container)
Create a traceClause- Parameters:
target
- the clause whose evaluation is being tracedcontainer
- the container of the containing FLWORExpression
-
-
Method Detail
-
getNamespaceResolver
public NamespaceResolver getNamespaceResolver()
Get the namespace bindings from the static context of the clause- Returns:
- a namespace resolver that reflects the in scope namespaces of the clause
-
setNamespaceResolver
public void setNamespaceResolver(NamespaceResolver nsResolver)
Set the namespace bindings from the static context of the clause- Parameters:
nsResolver
- a namespace resolver that reflects the in scope namespaces of the clause
-
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
-
copy
public TraceClause copy()
Description copied from class:Clause
Create a copy of this clause
-
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 classClause
- Parameters:
base
- the input tuple streamcontext
- the dynamic evaluation 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 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
-
processSubExpressions
public void processSubExpressions(ExpressionProcessor processor) throws XPathException
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
-
explain
public void explain(ExpressionPresenter out)
Diagnostic print of expression structure. The abstract expression tree is written to the supplied output destination.
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-