net.sf.saxon.expr
public class UserFunctionCall extends FunctionCall implements InstructionInfoProvider
| Nested Class Summary | |
|---|---|
| class | UserFunctionCall.FunctionCallPackage
Inner class used to wrap up the set of actual arguments to a tail-recursive call of
the containing function. |
| Constructor Summary | |
|---|---|
| UserFunctionCall() | |
| Method Summary | |
|---|---|
| void | checkArguments(StaticContext env)
Method called during the type checking phase |
| void | checkFunctionCall(UserFunction compiledFunction, StaticContext env)
Check the function call against the declared function signature |
| int | computeCardinality()
Determine the cardinality of the result |
| void | display(int level, NamePool pool, PrintStream out) |
| ValueRepresentation | dynamicCall(ValueRepresentation[] suppliedArguments, XPathContext context)
Call the function dynamically. |
| Item | evaluateItem(XPathContext c)
Call the function, returning the value as an item. |
| Expression[] | getArguments()
Get the arguments (the expressions supplied in the function call) |
| UserFunction | getFunction()
Get the function that is being called by this function call |
| InstructionInfo | getInstructionInfo()
Get diagnostic information about this expression |
| int | getIntrinsicDependencies() |
| ItemType | getItemType(TypeHierarchy th)
Determine the data type of the expression, if possible |
| boolean | isConfirmed()
Determine whether this function call is confirmed |
| SequenceIterator | iterate(XPathContext c)
Call the function, returning an iterator over the results. |
| boolean | markTailFunctionCalls()
Mark tail-recursive calls on stylesheet functions. |
| Expression | preEvaluate(StaticContext env)
Pre-evaluate a function at compile time. |
| void | setConfirmed(boolean conf)
Set this function as confirmed (the function being called is known to exist) or not |
| void | setFunction(UserFunction compiledFunction, StaticContext env)
Create the reference to the function to be called, and validate for consistency |
| void | setStaticType(SequenceType type)
Set the static type |
| Expression | simplify(StaticContext env)
Simplify the function call |
Parameters: th
Returns: Type.ITEM (meaning not known in advance)