Class SumFunction

  • All Implemented Interfaces:
    Function

    public class SumFunction
    extends java.lang.Object
    implements Function

    4.4 number sum(node-set)

    The sum function returns the sum, for each node in the argument node-set, of the result of converting the string-values of the node to a number.
    Author:
    bob mcwhirter (bob @ werken.com)
    See Also:
    Section 4.4 of the XPath Specification
    • Constructor Summary

      Constructors 
      Constructor Description
      SumFunction()
      Create a new SumFunction object.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.Object call​(Context context, java.util.List args)
      Returns the sum of its arguments.
      static java.lang.Double evaluate​(java.lang.Object obj, Navigator nav)
      Returns the sum of the items in a list.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • SumFunction

        public SumFunction()
        Create a new SumFunction object.
    • Method Detail

      • call

        public java.lang.Object call​(Context context,
                                     java.util.List args)
                              throws FunctionCallException
        Returns the sum of its arguments.
        Specified by:
        call in interface Function
        Parameters:
        context - the context at the point in the expression when the function is called
        args - a list that contains exactly one item, also a List
        Returns:
        a Double containing the sum of the items in args.get(0)
        Throws:
        FunctionCallException - if args has more or less than one item; or if the first argument is not a List
      • evaluate

        public static java.lang.Double evaluate​(java.lang.Object obj,
                                                Navigator nav)
                                         throws FunctionCallException
        Returns the sum of the items in a list. If necessary, each item in the list is first converted to a Double as if by the XPath number() function.
        Parameters:
        obj - a List of numbers to be summed
        nav - ignored
        Returns:
        the sum of the list
        Throws:
        FunctionCallException - if obj is not a List