Package net.sf.saxon.functions
Class TreatFn
- java.lang.Object
-
- net.sf.saxon.expr.ComputedExpression
-
- net.sf.saxon.expr.FunctionCall
-
- net.sf.saxon.functions.SystemFunction
-
- net.sf.saxon.functions.TreatFn
-
- All Implemented Interfaces:
java.io.Serializable
,javax.xml.transform.SourceLocator
,Container
,Expression
,InstructionInfoProvider
public class TreatFn extends SystemFunction
This class supports the XPath 2.0 functions exactly-one(), one-or-more(), zero-or-one(). Because Saxon doesn't do strict static type checking, these are essentially identity functions; the run-time type checking is done as part of the function call mechanism- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class net.sf.saxon.functions.SystemFunction
operation
-
Fields inherited from class net.sf.saxon.expr.FunctionCall
argument
-
Fields inherited from class net.sf.saxon.expr.ComputedExpression
locationId, staticProperties
-
Fields inherited from interface net.sf.saxon.expr.Expression
EVALUATE_METHOD, ITERATE_METHOD, PROCESS_METHOD
-
-
Constructor Summary
Constructors Constructor Description TreatFn()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Item
evaluateItem(XPathContext context)
Evaluate the functionjava.lang.String
getErrorCodeForTypeErrors()
Return the error code to be used for type errorsSequenceIterator
iterate(XPathContext context)
Iterate over the results of the function-
Methods inherited from class net.sf.saxon.functions.SystemFunction
addContextDocumentArgument, checkArguments, computeCardinality, computeSpecialProperties, display, getDetails, getItemType, getRequiredType, main, makeSystemFunction, setDetails, useContextItemAsDefault
-
Methods inherited from class net.sf.saxon.expr.FunctionCall
checkArgumentCount, getArguments, getDisplayName, getFunctionNameCode, getNumberOfArguments, iterateSubExpressions, optimize, preEvaluate, promote, replaceSubExpression, setArguments, setFunctionNameCode, simplify, simplifyArguments, typeCheck
-
Methods inherited from class net.sf.saxon.expr.ComputedExpression
adoptChildExpression, checkPermittedContents, computeDependencies, computeStaticProperties, doPromotion, dynamicError, effectiveBooleanValue, evaluateAsString, getCardinality, getColumnNumber, getConstructType, getDependencies, getExecutable, getHostLanguage, getImplementationMethod, getInstructionInfo, getIntrinsicDependencies, getLineNumber, getLocationId, getLocationProvider, getParentExpression, getPublicId, getSlotsUsed, getSpecialProperties, getSystemId, hasBadParentPointer, markTailFunctionCalls, process, resetStaticProperties, setLocationId, setParentExpression, setParentExpression, suppressValidation, typeError
-
-
-
-
Method Detail
-
getErrorCodeForTypeErrors
public java.lang.String getErrorCodeForTypeErrors()
Return the error code to be used for type errors- Overrides:
getErrorCodeForTypeErrors
in classSystemFunction
-
evaluateItem
public Item evaluateItem(XPathContext context) throws XPathException
Evaluate the function- Specified by:
evaluateItem
in interfaceExpression
- Overrides:
evaluateItem
in classComputedExpression
- Parameters:
context
- The context in which the expression is to be evaluated- Returns:
- the node or atomic value that results from evaluating the expression; or null to indicate that the result is an empty sequence
- Throws:
XPathException
- if any dynamic error occurs evaluating the expression
-
iterate
public SequenceIterator iterate(XPathContext context) throws XPathException
Iterate over the results of the function- Specified by:
iterate
in interfaceExpression
- Overrides:
iterate
in classComputedExpression
- Parameters:
context
- supplies the context for evaluation- Returns:
- a SequenceIterator that can be used to iterate over the result of the expression
- Throws:
XPathException
- if any dynamic error occurs evaluating the expression
-
-