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.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class net.sf.saxon.expr.flwor.Clause
Clause.ClauseName
-
-
Constructor Summary
Constructors Constructor Description TraceClause(FLWORExpression expression, Clause target)Create a traceClause
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddToPathMap(PathMap pathMap, PathMap.PathMapNodeSet pathMapNodeSet)Collect information about the navigation paths followed by this clause, for document projection purposesTraceClausecopy(FLWORExpression flwor, RebindingMap rebindings)Create a copy of this clausevoidexplain(ExpressionPresenter out)Diagnostic print of expression structure.Clause.ClauseNamegetClauseKey()Get a keyword identifying what kind of clause this isNamespaceResolvergetNamespaceResolver()Get the namespace bindings from the static context of the clauseTuplePullgetPullStream(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 modifiesTuplePushgetPushStream(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 streamvoidprocessOperands(OperandProcessor processor)Process the subexpressions of this clausevoidsetNamespaceResolver(NamespaceResolver nsResolver)Set the namespace bindings from the static context of the clausejava.lang.StringtoString()-
Methods inherited from class net.sf.saxon.expr.flwor.Clause
containsNonInlineableVariableReference, gatherVariableReferences, getConfiguration, getLocation, getPackageData, getRangeVariables, getTraceInfo, isRepeated, optimize, refineVariableType, setLocation, setPackageData, setRepeated, toShortString, typeCheck
-
-
-
-
Constructor Detail
-
TraceClause
public TraceClause(FLWORExpression expression, Clause target)
Create a traceClause- Parameters:
target- the clause whose evaluation is being traced
-
-
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 Clause.ClauseName getClauseKey()
Description copied from class:ClauseGet a keyword identifying what kind of clause this is- Specified by:
getClauseKeyin classClause- Returns:
- the kind of clause
-
copy
public TraceClause copy(FLWORExpression flwor, RebindingMap rebindings)
Description copied from class:ClauseCreate 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:
getPullStreamin classClause- Parameters:
base- the input tuple streamcontext- the dynamic evaluation context- Returns:
- the output tuple stream
-
getPushStream
public TuplePush getPushStream(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 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
public void processOperands(OperandProcessor processor) throws XPathException
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
public void addToPathMap(PathMap pathMap, PathMap.PathMapNodeSet pathMapNodeSet)
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
public void explain(ExpressionPresenter out) throws XPathException
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
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
-