Package net.sf.saxon.functions
Class Number_1
java.lang.Object
net.sf.saxon.functions.AbstractFunction
net.sf.saxon.functions.SystemFunction
net.sf.saxon.functions.ScalarSystemFunction
net.sf.saxon.functions.Number_1
- All Implemented Interfaces:
Callable,FunctionItem,GroundedValue,Item,Sequence
Implements the XPath fn:number() function when called with one argument.
Note: this function accepts the value "+INF" whether or not XSD 1.1 is enabled.
-
Nested Class Summary
Nested Classes -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic DoubleValueconvert(AtomicValue value, Configuration config) Static method to perform the same conversion as the number() function.evaluate(Item arg, XPathContext context) Abstract method that must be supplied in subclasses to perform the evaluationMake an elaborator for a system function 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.static DoubleValuetoNumber(AtomicValue arg0) The actual implementation logictypeCheckCaller(FunctionCall caller, ExpressionVisitor visitor, ContextItemStaticInfo contextInfo) Type-check a calling expression.Methods inherited from class net.sf.saxon.functions.ScalarSystemFunction
call, makeFunctionCallMethods inherited from class net.sf.saxon.functions.SystemFunction
dependsOnContextItem, dynamicCall, equals, export, exportAdditionalArguments, exportAttributes, fixArguments, getArity, getCardinality, getContextNode, getDescription, getDetails, 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, toStringMethods 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
-
Number_1
public Number_1()
-
-
Method Details
-
evaluate
Description copied from class:ScalarSystemFunctionAbstract method that must be supplied in subclasses to perform the evaluation- Specified by:
evaluatein classScalarSystemFunction- Parameters:
arg- the supplied argumentcontext- the dynamic context- Returns:
- the result of the evaluation
- Throws:
XPathException- if a dynamic error occurs
-
resultWhenEmpty
Description copied from class:ScalarSystemFunctionMethod 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- Overrides:
resultWhenEmptyin classScalarSystemFunction- Returns:
- the result of evaluation when the supplied argument is an empty sequence
-
typeCheckCaller
public Expression typeCheckCaller(FunctionCall caller, ExpressionVisitor visitor, ContextItemStaticInfo contextInfo) Type-check a calling expression.- Overrides:
typeCheckCallerin classSystemFunction- Parameters:
caller- the function call expression calling this functionvisitor- the expression visitorcontextInfo- static context information relating to the call- Returns:
- a type-checked replacement for the supplied function call
-
toNumber
The actual implementation logic- Parameters:
arg0- the atomic value to be converted- Returns:
- the result of the conversion
-
convert
Static method to perform the same conversion as the number() function. This is different from the convert(Type.DOUBLE) in that it produces NaN rather than an error for non-numeric operands.- Parameters:
value- the value to be convertedconfig- the Saxon configuration- Returns:
- the result of the conversion
-
getElaborator
Make an elaborator for a system function call on this function- Overrides:
getElaboratorin classSystemFunction- Returns:
- a suitable elaborator; or null if no custom elaborator is available
-