Package net.sf.saxon.functions
Class FoldingFunction
- java.lang.Object
- 
- net.sf.saxon.functions.AbstractFunction
- 
- net.sf.saxon.functions.SystemFunction
- 
- net.sf.saxon.functions.FoldingFunction
 
 
 
- 
- All Implemented Interfaces:
- Callable,- Function,- GroundedValue,- Item,- Sequence
 - Direct Known Subclasses:
- ArrayFunctionSet.ArrayFromSequence,- Average,- FoldLeftFn,- StringJoin,- Sum
 
 public abstract class FoldingFunction extends SystemFunction Implementation of aggregate functions such as sum() and avg() that supply a fold() function. Such functions are automatically streamable.
- 
- 
Constructor SummaryConstructors Constructor Description FoldingFunction()
 - 
Method SummaryAll Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description Sequencecall(XPathContext context, Sequence[] arguments)Evaluate the expressionabstract FoldgetFold(XPathContext context, Sequence... additionalArguments)Create the Fold object which actually performs the evaluation.java.lang.StringgetStreamerName()Get a name that identifies the class that can be used to evaluate this function in streaming mode, that is, supplying one item or event at a time as it is delivered by the parser.- 
Methods inherited from class net.sf.saxon.functions.SystemFunctiondependsOnContextItem, dynamicCall, equals, export, exportAdditionalArguments, exportAttributes, fixArguments, getArity, getCardinality, getCompilerName, getContextNode, getDescription, getDetails, getErrorCodeForTypeErrors, getFunctionItemType, getFunctionName, getIntegerBounds, getNetCost, getOperandRoles, getRequiredType, getResultItemType, getResultItemType, getRetainedStaticContext, getSpecialProperties, getStaticBaseUriString, getUniStringArg, hashCode, importAttributes, isSequenceVariadic, isTrustedResultType, makeCall, makeFunction, makeFunctionCall, makeOptimizedFunctionCall, resultIfEmpty, setArity, setDetails, setRetainedStaticContext, supplyTypeInformation, toShortString, toString, typeCheckCaller
 - 
Methods inherited from class net.sf.saxon.functions.AbstractFunctionatomize, deepEquals, effectiveBooleanValue, getAnnotations, getSerialNumber, getUnicodeStringValue, isArray, isMap, makeNewContext, simplify, typeCheck
 - 
Methods inherited from class java.lang.Objectclone, finalize, getClass, notify, notifyAll, wait, wait, wait
 - 
Methods inherited from interface net.sf.saxon.om.GroundedValueasIterable, concatenate, containsNode, materialize
 - 
Methods inherited from interface net.sf.saxon.om.ItemgetLength, getStringValue, head, isStreamed, itemAt, iterate, reduce, subsequence
 - 
Methods inherited from interface net.sf.saxon.om.SequencemakeRepeatable
 
- 
 
- 
- 
- 
Method Detail- 
getFoldpublic abstract Fold getFold(XPathContext context, Sequence... additionalArguments) throws XPathException Create the Fold object which actually performs the evaluation. Must be implemented in every subclass.- Parameters:
- context- the dynamic evaluation context
- additionalArguments- the values of all arguments other than the first.
- Returns:
- the Fold object used to compute the function
- Throws:
- XPathException- if a dynamic error occurs
 
 - 
callpublic Sequence call(XPathContext context, Sequence[] arguments) throws XPathException Evaluate the expression- Parameters:
- context- the dynamic evaluation context
- arguments- the values of the arguments, supplied as Sequences
- Returns:
- the result of the evaluation, in the form of a Sequence
- Throws:
- XPathException- if a dynamic error occurs during the evaluation of the expression
 
 - 
getStreamerNamepublic java.lang.String getStreamerName() Description copied from class:SystemFunctionGet a name that identifies the class that can be used to evaluate this function in streaming mode, that is, supplying one item or event at a time as it is delivered by the parser. Special streaming support is generally available in Saxon-EE for all system functions that take a sequence as their argument.- Overrides:
- getStreamerNamein class- SystemFunction
- Returns:
- a name that identifies a class that supports streamed evaluation of this system
 function, or null if no such class is available. The mapping of names to classes is
 defined in the Saxon-EE class StreamerMap. In non-streaming Saxon editions (HE and PE) the method always returns null.
 
 
- 
 
-