public class Count extends FoldingFunction
operationargumentEFFECTIVE_BOOLEAN_VALUE, EVALUATE_METHOD, ITEM_FEED_METHOD, ITERATE_METHOD, locationId, MAX_SEQUENCE_LENGTH, MAX_STRING_LENGTH, PROCESS_METHOD, staticProperties, UNBOUNDED_LOWER, UNBOUNDED_UPPER, WATCH_METHOD| Constructor and Description |
|---|
Count() |
| Modifier and Type | Method and Description |
|---|---|
IntegerValue |
call(XPathContext context,
Sequence[] arguments)
Evaluate the expression
|
static int |
count(SequenceIterator iter)
Get the number of items in a sequence identified by a SequenceIterator
|
Int64Value |
evaluateItem(XPathContext context)
Evaluate the function
|
ExpressionCompiler |
getExpressionCompiler()
Return the compiler of the Sum expression
|
Fold |
getFold(XPathContext context,
Sequence... additionalArguments)
Create the Fold object which actually performs the evaluation.
|
int |
getImplementationMethod()
Get implementation method
|
IntegerValue[] |
getIntegerBounds()
For an expression that returns an integer or a sequence of integers, get
a lower and upper bound on the values of the integers that may be returned, from
static analysis.
|
CountAdjunct |
getStreamingAdjunct()
Get a class that supports streamed evaluation of this expression
|
Expression |
optimize(ExpressionVisitor visitor,
ContextItemStaticInfo contextItemType)
Perform optimisation of an expression and its subexpressions.
|
iterateaddContextDocumentArgument, addDocToPathMap, bindStaticContext, checkArguments, computeCardinality, computeSpecialProperties, copy, equalOrNull, equals, getContextNode, getConvertingCallable, getDefaultArgumentNode, getDetails, getErrorCodeForTypeErrors, getFunctionItemType, getItemType, getOperation, getRequiredType, makeSystemFunction, operands, setDetails, toShortString, useContextItemAsDefaultaddExternalFunctionCallToPathMap, checkArgumentCount, explain, getArguments, getDisplayName, getExpressionName, getFunctionName, getNumberOfArguments, hashCode, preEvaluate, promote, replaceOperand, setArguments, setFunctionName, simplifyArguments, toString, typeCheckaddToPathMap, adoptChildExpression, checkForUpdatingSubexpressions, checkPermittedContents, clearStreamabilityData, computeDependencies, computeStaticProperties, doPromotion, dynamicError, effectiveBooleanValue, evaluateAsString, evaluatePendingUpdates, explain, getCardinality, getColumnNumber, getConfiguration, getConstructType, getContainer, getDependencies, getEvaluationMethod, getHostLanguage, getIntrinsicDependencies, getLineNumber, getLocationId, getObjectName, getPosture, getProperties, getProperty, getPublicId, getSlotsUsed, getSpecialProperties, getStreamability, getSweep, getSystemId, hasVariableBinding, identityHashCode, implementsStaticTypeCheck, isIdentical, isSubtreeExpression, isUpdatingExpression, isVacuousExpression, iterateEvents, makeStreamingAdjunct, markTailFunctionCalls, operandList, process, resetLocalStaticProperties, setContainer, setEvaluationMethod, setFiltered, setFlattened, setLocationId, setPostureAndSweep, simplify, staticTypeCheck, suppressValidation, toPattern, toStreamingPattern, typeError, unorderedpublic Expression optimize(ExpressionVisitor visitor, ContextItemStaticInfo contextItemType) throws XPathException
SystemFunctionCallThis method is called after all references to functions and variables have been resolved to the declaration of the function or variable, and after all type checking has been done.
optimize in class SystemFunctionCallvisitor - an expression visitorcontextItemType - the static type of "." at the point where this expression is invoked.
The parameter is set to null if it is known statically that the context item will be undefined.
If the type of the context item is not known statically, the argument is set to
Type.ITEM_TYPEXPathException - if an error is discovered during this phase
(typically a type error)public int getImplementationMethod()
FoldingFunctiongetImplementationMethod in class FoldingFunctionpublic IntegerValue[] getIntegerBounds()
getIntegerBounds in class Expressionpublic Fold getFold(XPathContext context, Sequence... additionalArguments) throws XPathException
getFold in class FoldingFunctioncontext - the dynamic evaluation contextadditionalArguments - the values of all arguments other than the first.XPathException - if a dynamic error occurspublic Int64Value evaluateItem(XPathContext context) throws XPathException
evaluateItem in class FoldingFunctioncontext - The context in which the expression is to be evaluatedXPathException - if any dynamic error occurs evaluating the
expressionpublic static int count(SequenceIterator iter) throws XPathException
iter - The SequenceIterator. This method moves the current position
of the supplied iterator; if this isn't safe, make a copy of the iterator
first by calling getAnother(). The supplied iterator must be positioned
before the first item (there must have been no call on next()).XPathException - if a failure occurs reading the input sequencepublic IntegerValue call(XPathContext context, Sequence[] arguments) throws XPathException
call in interface Callablecall in class FoldingFunctioncontext - the dynamic evaluation contextarguments - the values of the arguments, supplied as SequencesXPathException - if a dynamic error occurs during the evaluation of the expressionpublic CountAdjunct getStreamingAdjunct()
getStreamingAdjunct in class FoldingFunctionpublic ExpressionCompiler getExpressionCompiler()
getExpressionCompiler in class ExpressionCopyright (c) 2004-2014 Saxonica Limited. All rights reserved.