Class Sum

    • Constructor Detail

      • Sum

        public Sum()
    • Method Detail

      • makeFunctionCall

        public Expression makeFunctionCall​(Expression... arguments)
        Description copied from class: SystemFunction
        Make an expression that either calls this function, or that is equivalent to a call on this function
        Overrides:
        makeFunctionCall in class SystemFunction
        Parameters:
        arguments - the supplied arguments to the function call
        Returns:
        either a function call on this function, or an expression that delivers the same result
      • getResultItemType

        public ItemType getResultItemType​(Expression[] args)
        Description copied from class: SystemFunction
        Get the return type, given knowledge of the actual arguments
        Overrides:
        getResultItemType in class SystemFunction
        Parameters:
        args - the actual arguments supplied
        Returns:
        the best available item type that the function will return
      • getCardinality

        public int getCardinality​(Expression[] arguments)
        Description copied from class: SystemFunction
        Get the cardinality, given knowledge of the actual arguments
        Overrides:
        getCardinality in class SystemFunction
        Parameters:
        arguments - the actual arguments supplied
        Returns:
        the most precise available cardinality that the function will return
      • getFold

        public Fold getFold​(XPathContext context,
                            Sequence... additionalArguments)
                     throws XPathException
        Create the Fold object which actually performs the evaluation.
        Specified by:
        getFold in class FoldingFunction
        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
      • total

        public static AtomicValue total​(SequenceIterator in,
                                        XPathContext context,
                                        Location locator)
                                 throws XPathException
        Static method to compute a total, invoked from compiled bytecode
        Parameters:
        in - the sequence of items to be summed
        context - dynamic context for evaluation
        locator - expression location for diagnostics
        Returns:
        null if the input is empty, otherwise the total as defined by the semantics of the sum() function
        Throws:
        XPathException - if a dynamic error occurs
      • getElaborator

        public Elaborator getElaborator()
        Make an elaborator for a system function call on this function
        Overrides:
        getElaborator in class SystemFunction
        Returns:
        a suitable elaborator; or null if no custom elaborator is available