Package net.sf.saxon.functions.hof
Class CurriedFunction
- java.lang.Object
-
- net.sf.saxon.functions.AbstractFunction
-
- net.sf.saxon.functions.hof.CurriedFunction
-
- All Implemented Interfaces:
Callable,Function,GroundedValue,Item,Sequence
public class CurriedFunction extends AbstractFunction
A function obtained by currying another function, that is, the result of calling fn:partial-apply
-
-
Constructor Summary
Constructors Constructor Description CurriedFunction(Function targetFunction, Sequence[] boundValues)Create a curried function
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Sequencecall(XPathContext context, Sequence[] args)Invoke the functionvoidexport(ExpressionPresenter out)Output information about this function itemAnnotationListgetAnnotations()Get the function annotations (as defined in XQuery).intgetArity()Get the arity of the function (equal to the number of placeholders)java.lang.StringgetDescription()Get a description of this function for use in error messages.FunctionItemTypegetFunctionItemType()Get the item type of the function itemStructuredQNamegetFunctionName()Get the name of the function, or null if it is anonymous-
Methods inherited from class net.sf.saxon.functions.AbstractFunction
atomize, deepEquals, effectiveBooleanValue, getOperandRoles, getStringValue, getStringValueCS, isArray, isMap, isTrustedResultType, makeNewContext, simplify, typeCheck
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface net.sf.saxon.om.Function
getGenre, toShortString
-
Methods inherited from interface net.sf.saxon.om.GroundedValue
asIterable, concatenate, containsNode, materialize
-
Methods inherited from interface net.sf.saxon.om.Item
getLength, head, isStreamed, itemAt, iterate, reduce, subsequence
-
Methods inherited from interface net.sf.saxon.om.Sequence
makeRepeatable
-
-
-
-
Method Detail
-
getFunctionItemType
public FunctionItemType getFunctionItemType()
Get the item type of the function item- Returns:
- the function item's type
-
getFunctionName
public StructuredQName getFunctionName()
Get the name of the function, or null if it is anonymous- Returns:
- the function name, or null for an anonymous inline function
-
getDescription
public java.lang.String getDescription()
Get a description of this function for use in error messages. For named functions, the description is the function name (as a lexical QName). For others, it might be, for example, "inline function", or "partially-applied ends-with function".- Returns:
- a description of the function for use in error messages
-
getArity
public int getArity()
Get the arity of the function (equal to the number of placeholders)- Returns:
- the number of arguments in the function signature
-
getAnnotations
public AnnotationList getAnnotations()
Get the function annotations (as defined in XQuery). Returns an empty list if there are no function annotations. The function annotations on a partially applied function are the same as the annotations on its base function.- Specified by:
getAnnotationsin interfaceFunction- Overrides:
getAnnotationsin classAbstractFunction- Returns:
- the function annotations
-
call
public Sequence call(XPathContext context, Sequence[] args) throws XPathException
Invoke the function- Parameters:
context- the XPath dynamic evaluation contextargs- the actual arguments to be supplied- Returns:
- the result of invoking the function
- Throws:
XPathException
-
export
public void export(ExpressionPresenter out) throws XPathException
Output information about this function item- Specified by:
exportin interfaceFunction- Overrides:
exportin classAbstractFunction- Parameters:
out- the destination to write to- Throws:
XPathException
-
-