Package net.sf.saxon.functions
Class ScalarSystemFunction
java.lang.Object
net.sf.saxon.functions.AbstractFunction
net.sf.saxon.functions.SystemFunction
net.sf.saxon.functions.ScalarSystemFunction
- All Implemented Interfaces:
Callable,ArityOneFunction,IFunctionWithRetainedParameterNames,FunctionItem,GroundedValue,Item,Sequence
- Direct Known Subclasses:
Abs,AccessorFn,Ceiling,DocumentUri_1,EncodeForUri,EscapeHtmlUri,Floor,GenerateId_1,IriToUri,LocalName_1,LowerCase,Name_1,NamespaceUriFn_1,NodeName_1,NormalizeSpace_1,Number_1,String_1,StringLength_1,UpperCase
A Scalar system function is a pure function that accepts a single item as its operand,
returns a single atomic value as its result, typically returns an empty sequence if the argument is an
empty sequence, and has no context dependencies.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfinal Sequencecall(XPathContext context, Sequence[] arguments) Evaluate the expressioncall1(XPathContext context, Sequence arg0) Call a function with one argumentabstract AtomicValueevaluate(Item arg, XPathContext context) Abstract method that must be supplied in subclasses to perform the evaluationmakeFunctionCall(Expression[] arguments) Make an expression that either calls this function, or that is equivalent to a call on this functionMethod that may be supplied in subclasses, to indicate the result that is returned when an empty sequence is supplied as the argument value.Methods inherited from class net.sf.saxon.functions.SystemFunction
dependsOnContextItem, dynamicCall, equals, export, exportAdditionalArguments, exportAttributes, fixArguments, getArity, getCardinality, getContextNode, getDescription, getDetails, getElaborator, getErrorCodeForTypeErrors, getFunctionItemType, getFunctionName, getNetCost, getOperandRoles, getParameterNames, getRequiredType, getResultItemType, getResultItemType, getRetainedStaticContext, getSpecialProperties, getStaticBaseUriString, getStreamerName, getUniqueIdentifier, getUniStringArg, hashCode, importAttributes, isSequenceVariadic, isTrustedResultType, makeCall, makeFunction, makeFunction40, makeOptimizedFunctionCall, makeTrueFunctionCall, 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
getLabel, getLength, getStringValue, head, isStreamed, itemAt, iterate, reduce, subsequenceMethods inherited from interface net.sf.saxon.om.Sequence
makeRepeatable
-
Constructor Details
-
ScalarSystemFunction
public ScalarSystemFunction()
-
-
Method Details
-
call1
Call a function with one argument- Specified by:
call1in interfaceArityOneFunction- Parameters:
context- the dynamic evaluation contextarg0- the first argument- Returns:
- the result of the function call
- Throws:
XPathException- if the call fails with a dynamic error
-
evaluate
Abstract method that must be supplied in subclasses to perform the evaluation- Parameters:
arg- the supplied argumentcontext- the dynamic context- Returns:
- the result of the evaluation. May be null indicating the result is an empty sequence.
- Throws:
XPathException- if a dynamic error occurs
-
resultWhenEmpty
Method that may be supplied in subclasses, to indicate the result that is returned when an empty sequence is supplied as the argument value. The default is to return the empty sequence- Returns:
- the result of evaluation when the supplied argument is an empty sequence
-
call
Evaluate the expression- Specified by:
callin interfaceCallable- Parameters:
context- the dynamic evaluation contextarguments- the values of the arguments, supplied as Sequences- Returns:
- the result of the evaluation, in the form of a Sequence
- Throws:
XPathException- if a dynamic error occurs during the evaluation of the expression
-
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
-