public class XPathFunctionLibrary extends Object implements FunctionLibrary
| Constructor and Description |
|---|
XPathFunctionLibrary()
Construct a XPathFunctionLibrary
|
| Modifier and Type | Method and Description |
|---|---|
Expression |
bind(SymbolicName.F functionName,
Expression[] staticArgs,
StaticContext env,
List<String> reasons)
Bind a function, given the URI and local parts of the function name,
and the list of expressions supplied as arguments.
|
FunctionLibrary |
copy()
This method creates a copy of a FunctionLibrary: if the original FunctionLibrary allows
new functions to be added, then additions to this copy will not affect the original, or
vice versa.
|
XPathFunctionResolver |
getXPathFunctionResolver()
Get the resolver
|
boolean |
isAvailable(SymbolicName.F functionName)
Test whether a function with a given name and arity is available
|
void |
setXPathFunctionResolver(XPathFunctionResolver resolver)
Set the resolver
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitsetConfigurationpublic XPathFunctionLibrary()
public void setXPathFunctionResolver(XPathFunctionResolver resolver)
resolver - The XPathFunctionResolver wrapped by this FunctionLibrarypublic XPathFunctionResolver getXPathFunctionResolver()
public Expression bind(SymbolicName.F functionName, Expression[] staticArgs, StaticContext env, List<String> reasons)
bind in interface FunctionLibraryfunctionName - The name of the functionstaticArgs - The expressions supplied statically in the function call. The intention is
that the static type of the arguments (obtainable via getItemType() and getCardinality() may
be used as part of the binding algorithm.env - The static contextreasons - If no matching function is found by the function library, it may add
a diagnostic explanation to this list explaining why none of the available
functions could be used.public boolean isAvailable(SymbolicName.F functionName)
This supports the function-available() function in XSLT.
isAvailable in interface FunctionLibraryfunctionName - the qualified name of the function being calledpublic FunctionLibrary copy()
copy in interface FunctionLibrary