net.sf.saxon.expr
Class UserFunctionCall.FunctionCallPackage
java.lang.Object
net.sf.saxon.value.Value
net.sf.saxon.expr.UserFunctionCall.FunctionCallPackage
- All Implemented Interfaces:
- Expression, java.io.Serializable, ValueRepresentation
- Enclosing class:
- UserFunctionCall
- public class UserFunctionCall.FunctionCallPackage
- extends Value
Inner class used to wrap up the set of actual arguments to a tail-recursive call of
the containing function. This argument package is passed back to the calling code
in place of a function result; the caller then loops to re-invoke the function
with these arguments, avoiding the creation of an additional stack frame.
- See Also:
- Serialized Form
Methods inherited from class net.sf.saxon.value.Value |
analyze, asItem, asValue, checkPermittedContents, collapseWhitespace, convert, convertJavaObjectToXPath, convertToJava, display, effectiveBooleanValue, equals, evaluateAsString, evaluateItem, getDependencies, getIterator, getLength, getParentExpression, getSpecialProperties, getStringValue, hashCode, itemAt, iterateSubExpressions, makeQNameValue, normalizeWhitespace, process, promote, simplify, stringToNumber, toString, trimWhitespace |
Methods inherited from class java.lang.Object |
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
UserFunctionCall.FunctionCallPackage
public UserFunctionCall.FunctionCallPackage(UserFunction function,
ValueRepresentation[] actualArgs,
XPathContext c)
getImplementationMethod
public int getImplementationMethod()
- An implementation of Expression must provide at least one of the methods evaluateItem(), iterate(), or process().
This method indicates which of these methods is provided directly. The other methods will always be available
indirectly, using an implementation that relies on one of the other methods.
call
public ValueRepresentation call()
throws XPathException
- Throws:
XPathException
appendTo
public ValueRepresentation appendTo(SequenceReceiver out)
throws XPathException
- Throws:
XPathException
getItemType
public ItemType getItemType()
- Determine the data type of the items in the expression, if possible
- Specified by:
getItemType
in interface Expression
- Overrides:
getItemType
in class Value
- Returns:
- AnyItemType (not known)
getCardinality
public int getCardinality()
- Determine the cardinality
- Specified by:
getCardinality
in interface Expression
- Overrides:
getCardinality
in class Value
iterate
public SequenceIterator iterate(XPathContext context)
throws XPathException
- Return an Iterator to iterate over the values of a sequence.
- Parameters:
context
- supplies the context for evaluation
- Returns:
- a SequenceIterator that can be used to iterate over the result
of the expression
- Throws:
XPathException
- if any dynamic error occurs evaluating the
expression