Package net.sf.saxon.expr
Class FunctionCall.FunctionCallElaborator
- java.lang.Object
-
- net.sf.saxon.expr.elab.Elaborator
-
- net.sf.saxon.expr.elab.PullElaborator
-
- net.sf.saxon.expr.FunctionCall.FunctionCallElaborator
-
- Direct Known Subclasses:
SystemFunctionCall.SystemFunctionCallElaborator
- Enclosing class:
- FunctionCall
public abstract static class FunctionCall.FunctionCallElaborator extends PullElaborator
-
-
Field Summary
Fields Modifier and Type Field Description protected SequenceEvaluator[]argumentEvaluators
-
Constructor Summary
Constructors Constructor Description FunctionCallElaborator()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidallocateArgumentEvaluators(FunctionCall expr, boolean allowRepeatedUse)Allocate evaluation functions for each argument (in fieldargumentEvaluators)protected Sequence[]evaluateArguments(XPathContext context)voidsetExpression(Expression expr)Set the expression being elaborated-
Methods inherited from class net.sf.saxon.expr.elab.PullElaborator
eagerly, elaborateForBoolean, elaborateForItem, elaborateForPull, elaborateForPush, elaborateForUnicodeString
-
Methods inherited from class net.sf.saxon.expr.elab.Elaborator
elaborateForString, elaborateForUpdate, getConfiguration, getExpression, handleNullString, handleNullUnicodeString, handlePossiblyNullString, handlePossiblyNullUnicodeString, lazily
-
-
-
-
Field Detail
-
argumentEvaluators
protected SequenceEvaluator[] argumentEvaluators
-
-
Method Detail
-
setExpression
public void setExpression(Expression expr)
Description copied from class:ElaboratorSet the expression being elaborated- Overrides:
setExpressionin classElaborator- Parameters:
expr- the expression
-
allocateArgumentEvaluators
protected void allocateArgumentEvaluators(FunctionCall expr, boolean allowRepeatedUse)
Allocate evaluation functions for each argument (in fieldargumentEvaluators)- Parameters:
expr- the function callallowRepeatedUse- true if the value of the argument must be supplied to the function in a way that allows repeated use. This will be true for user-written functions, false for system functions, where the implementation is arranged to only use the value once.
-
evaluateArguments
protected Sequence[] evaluateArguments(XPathContext context) throws XPathException
- Throws:
XPathException
-
-