# fold<T> method

1. @override

T fold<T>(

1. T initialValue,
2. T combine(
   1. T,
   2. E
   )

)
override

Reduces a collection to a single value by iteratively combining each element of the collection with an existing value

Uses `initialValue` as the initial value, then iterates through the elements and updates the value with each element using the `combine` function, as if by:

    var value = initialValue;
    for (E element in this) {
      value = combine(value, element);
    }
    return value;

Example of calculating the sum of an iterable:

    final numbers = <double>[10, 2, 5, 0.5];
    const initialValue = 100.0;
    final result = numbers.fold<double>(
        initialValue, (previousValue, element) => previousValue + element);
    print(result); // 117.5

## Implementation

    @override
    T fold<T>(T initialValue, T Function(T, E) combine) => _list.fold(initialValue, combine);