net.sf.saxon.instruct
public class TraceWrapper extends Instruction
Field Summary | |
---|---|
Expression | child |
Method Summary | |
---|---|
int | computeDependencies()
Get the static properties of this expression (other than its type). |
Expression | copy()
Copy an expression. |
boolean | createsNewNodes()
Determine whether this instruction creates new nodes.
|
Item | evaluateItem(XPathContext context)
Evaluate an expression as a single item. |
void | evaluatePendingUpdates(XPathContext context, PendingUpdateList pul)
Evaluate an updating expression, adding the results to a Pending Update List.
|
void | explain(ExpressionPresenter out)
Diagnostic print of expression structure. |
int | getCardinality()
Determine the static cardinality of the expression. |
int | getDependencies()
Determine which aspects of the context the expression depends on. |
int | getImplementationMethod() |
InstructionInfo | getInstructionInfo()
Get the instruction details |
int | getInstructionNameCode() |
ItemType | getItemType(TypeHierarchy th)
Get the item type of the items returned by evaluating this instruction |
SequenceIterator | iterate(XPathContext context)
Return an Iterator to iterate over the values of a sequence. |
Iterator<Expression> | iterateSubExpressions() |
Expression | optimize(ExpressionVisitor visitor, ItemType contextItemType) |
TailCall | processLeavingTail(XPathContext context)
Execute this instruction, with the possibility of returning tail calls if there are any.
|
Expression | promote(PromotionOffer offer, Expression parent)
Offer promotion for this subexpression. |
boolean | replaceSubExpression(Expression original, Expression replacement)
Replace one subexpression by a replacement subexpression |
Expression | simplify(ExpressionVisitor visitor)
Simplify an expression. |
Expression | typeCheck(ExpressionVisitor visitor, ItemType contextItemType) |
Returns: a set of flags indicating static properties of this expression
Returns: the copy of the original expression
Parameters: context The context in which the expression is to be evaluated
Returns: the node or atomic value that results from evaluating the expression; or null to indicate that the result is an empty sequence
Throws: net.sf.saxon.trans.XPathException if any dynamic error occurs evaluating the expression
Parameters: context the XPath dynamic evaluation context pul the pending update list to which the results should be written
Returns: one of the values Cardinality.ONE_OR_MORE, Cardinality.ZERO_OR_MORE, Cardinality.EXACTLY_ONE, Cardinality.ZERO_OR_ONE, Cardinality.EMPTY. This default implementation returns ZERO_OR_MORE (which effectively gives no information).
Returns: a set of bit-significant flags identifying the dependencies of the expression
Returns: the details of the child instruction (the instruction being traced)
Parameters: th the type hierarchy cache
Returns: the static item type of the instruction
Parameters: context supplies the context for evaluation
Returns: a SequenceIterator that can be used to iterate over the result of the expression
Throws: net.sf.saxon.trans.XPathException if any dynamic error occurs evaluating the expression
Parameters: context the dynamic execution context
Returns: either null, or a tail call that the caller must invoke on return
Throws: net.sf.saxon.trans.XPathException
Parameters: offer details of the offer, for example the offer to move expressions that don't depend on the context to an outer level in the containing expression parent
Returns: if the offer is not accepted, return this expression unchanged. Otherwise return the result of rewriting the expression to promote this subexpression
Throws: net.sf.saxon.trans.XPathException if any error is detected
Parameters: original the original subexpression replacement the replacement subexpression
Returns: true if the original subexpression is found
Parameters: visitor an expression visitor
Returns: the simplified expression
Throws: net.sf.saxon.trans.XPathException if an error is discovered during expression rewriting