chunk method

  1. @override
Future<void> chunk(
  1. int size,
  2. Future<void> callback(
    1. List<T> items
    )
)
override

Process results in chunks

Implementation

@override
Future<void> chunk(
  int size,
  Future<void> Function(List<T> items) callback,
) async {
  int page = 1;
  List<T> results;
  do {
    final q = clone();
    q.skip((page - 1) * size).take(size);

    results = await q.get();

    if (results.isNotEmpty) {
      await callback(results);
    }

    page++;
  } while (results.length == size);
}