jsonFoldArray<T, E> function

JsonBuilder<T> jsonFoldArray<T, E>(
  1. JsonBuilder<E> elementBuilder,
  2. T initialValue(),
  3. T combine(
    1. T previus,
    2. E elementValue
    )
)

Builds a value from a JSON array.

Builds a value for each element using elementBuilder, then folds those into a single value using initialValue and combine, just like Iterable.fold.

Implementation

JsonBuilder<T> jsonFoldArray<T, E>(
        JsonBuilder<E> elementBuilder,
        T Function() initialValue,
        T Function(T previus, E elementValue) combine) =>
    (JsonReader reader) {
      reader.expectArray();
      var result = initialValue();
      while (reader.hasNext()) {
        var element = elementBuilder(reader);
        result = combine(result, element);
      }
      return result;
    };