parameters: (environment, iterable, attribute=None, start=0)
return_statement: return sum(iterable, start)
docstring: Returns the sum of a sequence of numbers plus the value of parameter
      'start' (which defaults to 0).  When the sequence is empty it returns
      start.
  
      It is also possible to sum up only certain attributes:
  
      .. sourcecode:: jinja
  
          Total: {{ items|sum(attribute='price') }}
  
      .. versionchanged:: 2.6
         The `attribute` parameter was added to allow suming up over
         attributes.  Also the `start` parameter was moved on to the right.
docstring_summary: Returns the sum of a sequence of numbers plus the value of parameter
      'start' (which defaults to 0).  When the sequence is empty it returns
      start.
docstring_tokens: Returns the sum of a sequence of numbers plus the value of parameter start ( which defaults to 0 ) . When the sequence is empty it returns start .
function: def do_sum(environment, iterable, attribute=None, start=0):
      """Returns the sum of a sequence of numbers plus the value of parameter
      'start' (which defaults to 0).  When the sequence is empty it returns
      start.
  
      It is also possible to sum up only certain attributes:
  
      .. sourcecode:: jinja
  
          Total: {{ items|sum(attribute='price') }}
  
      .. versionchanged:: 2.6
         The `attribute` parameter was added to allow suming up over
         attributes.  Also the `start` parameter was moved on to the right.
      """
      if attribute is not None:
          iterable = imap(make_attrgetter(environment, attribute), iterable)
      return sum(iterable, start)
function_tokens: def do_sum ( environment , iterable , attribute = None , start = 0 ) : if attribute is not None : iterable = imap ( make_attrgetter ( environment , attribute ) , iterable ) return sum ( iterable , start )