net.sf.saxon.functions

Class DistinctValues

Implemented Interfaces:
EvaluableItem, InstructionInfoProvider, SequenceIterable, Serializable, SourceLocator

public class DistinctValues
extends CollatingFunction

The XPath 2.0 distinct-values() function

Nested Class Summary

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, PROCESS_METHOD, locationId, staticProperties

Method Summary

void
checkArguments(ExpressionVisitor visitor)
AtomicComparer
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

checkArguments, copy, getAtomicComparer, getCollator, getExpressionBaseURI, getStringCollator

Methods inherited from class net.sf.saxon.functions.SystemFunction

addContextDocumentArgument, addDocToPathMap, checkArguments, computeCardinality, computeSpecialProperties, copy, getDetails, getErrorCodeForTypeErrors, getItemType, getRequiredType, makeSystemFunction, optimize, setDetails, useContextItemAsDefault

Methods inherited from class net.sf.saxon.expr.FunctionCall

addExternalFunctionCallToPathMap, checkArgumentCount, checkArguments, equals, explain, getArguments, getDisplayName, getFunctionName, getNumberOfArguments, hashCode, iterateSubExpressions, optimize, preEvaluate, promote, replaceSubExpression, setArguments, setFunctionName, simplify, simplifyArguments, toString, typeCheck

Methods inherited from class net.sf.saxon.expr.Expression

addToPathMap, adoptChildExpression, checkPermittedContents, computeCardinality, computeDependencies, computeSpecialProperties, computeStaticProperties, copy, display, doPromotion, dynamicError, effectiveBooleanValue, evaluateAsString, evaluateItem, explain, explain, findParentOf, getCardinality, getColumnNumber, getConstructType, getContainer, getDependencies, getExecutable, getHostLanguage, getImplementationMethod, getInstructionInfo, getIntrinsicDependencies, getItemType, getLineNumber, getLocationId, getLocationProvider, getPublicId, getSlotsUsed, getSpecialProperties, getSystemId, hasLoopingSubexpression, implementsStaticTypeCheck, iterate, iterateEvents, iterateSubExpressions, markTailFunctionCalls, optimize, process, promote, replaceSubExpression, resetLocalStaticProperties, setContainer, setFiltered, setFlattened, setLocationId, simplify, staticTypeCheck, suppressValidation, toString, typeCheck, typeError

Method Details

checkArguments

public void checkArguments(ExpressionVisitor visitor)
            throws XPathException
Overrides:
checkArguments in interface CollatingFunction

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 interface SequenceIterable
Overrides:
iterate in interface Expression