Package net.sf.saxon.functions
Class DistinctValues
- java.lang.Object
-
- net.sf.saxon.expr.Expression
-
- net.sf.saxon.expr.FunctionCall
-
- net.sf.saxon.functions.SystemFunction
-
- net.sf.saxon.functions.CollatingFunction
-
- net.sf.saxon.functions.DistinctValues
-
- All Implemented Interfaces:
java.io.Serializable
,javax.xml.transform.SourceLocator
,LocationProvider
,SaxonLocator
,EvaluableItem
,SequenceIterable
,InstructionInfo
,org.xml.sax.Locator
public class DistinctValues extends CollatingFunction
The XPath 2.0 distinct-values() function- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
DistinctValues.DistinctIterator
Iterator class to return the distinct values in a sequence
-
Field Summary
-
Fields inherited from class net.sf.saxon.functions.CollatingFunction
stringCollator
-
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.Expression
EVALUATE_METHOD, ITERATE_METHOD, locationId, PROCESS_METHOD, staticProperties
-
-
Constructor Summary
Constructors Constructor Description DistinctValues()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
checkArguments(ExpressionVisitor visitor)
Method called during static type checkingAtomicComparer
getAtomicComparer()
Get the AtomicComparer allocated at compile time.SequenceIterator
iterate(XPathContext context)
Evaluate the function to return an iteration of selected values or nodes.-
Methods inherited from class net.sf.saxon.functions.CollatingFunction
copy, getAtomicComparer, getCollator, getExpressionBaseURI, getStringCollator
-
Methods inherited from class net.sf.saxon.functions.SystemFunction
addContextDocumentArgument, addDocToPathMap, computeCardinality, computeSpecialProperties, getDetails, getErrorCodeForTypeErrors, getItemType, getRequiredType, makeSystemFunction, optimize, setDetails, useContextItemAsDefault
-
Methods inherited from class net.sf.saxon.expr.FunctionCall
addExternalFunctionCallToPathMap, checkArgumentCount, equals, explain, getArguments, getDisplayName, getFunctionName, getNumberOfArguments, hashCode, iterateSubExpressions, preEvaluate, promote, replaceSubExpression, setArguments, setFunctionName, simplify, simplifyArguments, toString, typeCheck
-
Methods inherited from class net.sf.saxon.expr.Expression
addToPathMap, adoptChildExpression, checkForUpdatingSubexpressions, checkPermittedContents, computeDependencies, computeStaticProperties, display, doPromotion, dynamicError, effectiveBooleanValue, evaluateAsString, evaluateItem, evaluatePendingUpdates, explain, findParentOf, getCardinality, getColumnNumber, getColumnNumber, getConstructType, getContainer, getDependencies, getExecutable, getHostLanguage, getImplementationMethod, getIntrinsicDependencies, getLineNumber, getLineNumber, getLocationId, getLocationProvider, getObjectName, getProperties, getProperty, getPublicId, getSlotsUsed, getSpecialProperties, getSystemId, getSystemId, hasLoopingSubexpression, implementsStaticTypeCheck, isUpdatingExpression, iterateEvents, markTailFunctionCalls, process, resetLocalStaticProperties, setContainer, setFiltered, setFlattened, setLocationId, staticTypeCheck, suppressValidation, typeError
-
-
-
-
Method Detail
-
checkArguments
public void checkArguments(ExpressionVisitor visitor) throws XPathException
Description copied from class:SystemFunction
Method called during static type checking- Overrides:
checkArguments
in classCollatingFunction
- Parameters:
visitor
- the expression visitor- Throws:
XPathException
-
getAtomicComparer
public AtomicComparer getAtomicComparer()
Get the AtomicComparer allocated at compile time.- Returns:
- the AtomicComparer if one has been allocated at compile time; return null if the collation is not known until run-time
-
iterate
public SequenceIterator iterate(XPathContext context) throws XPathException
Evaluate the function to return an iteration of selected values or nodes.- Specified by:
iterate
in interfaceSequenceIterable
- Overrides:
iterate
in classExpression
- 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
-
-