Package net.sf.saxon.functions.hof
Class FunctionLookup
java.lang.Object
net.sf.saxon.functions.AbstractFunction
net.sf.saxon.functions.SystemFunction
net.sf.saxon.functions.ContextAccessorFunction
net.sf.saxon.functions.hof.FunctionLookup
- All Implemented Interfaces:
Callable,FunctionItem,GroundedValue,Item,Sequence
This class supports the function-lookup() function in XPath 3.0. It takes as arguments
a function name (QName) and arity, and returns a function item representing that
function if found, or an empty sequence if not found.
-
Nested Class Summary
Nested Classes -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbindContext(XPathContext context) Bind a context item to appear as part of the function's closure.call(XPathContext context, Sequence[] arguments) Evaluate the expressionbooleanDetermine whether two expressions are equivalentintgetSpecialProperties(Expression[] arguments) Determine the special properties of this function.inthashCode()lookup(StructuredQName name, int arity, XPathContext context) makeFunctionCall(Expression... arguments) Make an expression that either calls this function, or that is equivalent to a call on this functionMethods inherited from class net.sf.saxon.functions.SystemFunction
dependsOnContextItem, dynamicCall, export, exportAdditionalArguments, exportAttributes, fixArguments, getArity, getCardinality, getContextNode, getDescription, getDetails, getElaborator, getErrorCodeForTypeErrors, getFunctionItemType, getFunctionName, getIntegerBounds, getNetCost, getOperandRoles, getRequiredType, getResultItemType, getResultItemType, getRetainedStaticContext, getStaticBaseUriString, getStreamerName, getUniStringArg, importAttributes, isSequenceVariadic, isTrustedResultType, makeCall, makeFunction, makeFunction40, makeOptimizedFunctionCall, resultIfEmpty, setArity, setDetails, setRetainedStaticContext, supplyTypeInformation, toShortString, toString, typeCheckCallerMethods inherited from class net.sf.saxon.functions.AbstractFunction
atomize, deepEqual40, deepEquals, effectiveBooleanValue, getAnnotations, getUnicodeStringValue, isArray, isMap, makeNewContext, simplify, typeCheckMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface net.sf.saxon.om.FunctionItem
getGenreMethods inherited from interface net.sf.saxon.om.GroundedValue
asIterable, concatenate, containsNode, materializeMethods inherited from interface net.sf.saxon.om.Item
getLength, getStringValue, head, isStreamed, itemAt, iterate, reduce, subsequenceMethods inherited from interface net.sf.saxon.om.Sequence
makeRepeatable
-
Constructor Details
-
FunctionLookup
public FunctionLookup()
-
-
Method Details
-
makeFunctionCall
Description copied from class:SystemFunctionMake an expression that either calls this function, or that is equivalent to a call on this function- Overrides:
makeFunctionCallin classSystemFunction- Parameters:
arguments- the supplied arguments to the function call- Returns:
- either a function call on this function, or an expression that delivers the same result
-
equals
Determine whether two expressions are equivalent- Overrides:
equalsin classSystemFunction
-
hashCode
public int hashCode()- Overrides:
hashCodein classSystemFunction
-
bindContext
Bind a context item to appear as part of the function's closure. If this method has been called, the supplied context item will be used in preference to the context item at the point where the function is actually called.- Specified by:
bindContextin classContextAccessorFunction- Parameters:
context- the context to which the function applies. Must not be null.
-
lookup
public FunctionItem lookup(StructuredQName name, int arity, XPathContext context) throws XPathException - Throws:
XPathException
-
getSpecialProperties
Determine the special properties of this function.- Overrides:
getSpecialPropertiesin classSystemFunction- Parameters:
arguments- the actual arguments to the function call- Returns:
- the properties
-
call
Evaluate the expression- Specified by:
callin interfaceCallable- Overrides:
callin classContextAccessorFunction- Parameters:
context- the dynamic evaluation contextarguments- the values of the arguments, supplied as SequenceIterators- Returns:
- the result of the evaluation, in the form of a SequenceIterator
- Throws:
XPathException- if a dynamic error occurs during the evaluation of the expression
-