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
,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
,Path_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 Sequence
call
(XPathContext context, Sequence[] arguments) Evaluate the expressionabstract AtomicValue
evaluate
(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, getIntegerBounds, getNetCost, getOperandRoles, getRequiredType, getResultItemType, getResultItemType, getRetainedStaticContext, getSpecialProperties, getStaticBaseUriString, getStreamerName, getUniStringArg, hashCode, importAttributes, isSequenceVariadic, isTrustedResultType, makeCall, makeFunction, makeFunction40, makeOptimizedFunctionCall, resultIfEmpty, setArity, setDetails, setRetainedStaticContext, supplyTypeInformation, toShortString, toString, typeCheckCaller
Methods inherited from class net.sf.saxon.functions.AbstractFunction
atomize, deepEqual40, deepEquals, effectiveBooleanValue, getAnnotations, getUnicodeStringValue, isArray, isMap, makeNewContext, simplify, typeCheck
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface net.sf.saxon.om.FunctionItem
getGenre
Methods inherited from interface net.sf.saxon.om.GroundedValue
asIterable, concatenate, containsNode, materialize
Methods inherited from interface net.sf.saxon.om.Item
getLength, getStringValue, head, isStreamed, itemAt, iterate, reduce, subsequence
Methods inherited from interface net.sf.saxon.om.Sequence
makeRepeatable
-
Constructor Details
-
Method Details
-
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
- 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- 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:SystemFunction
Make an expression that either calls this function, or that is equivalent to a call on this function- Overrides:
makeFunctionCall
in 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
-