generateBook method

Map<int, List<E>> generateBook({
  1. int? valuesPerPage,
  2. int? numberOfPages,
})

Implementation

Map<int, List<E>> generateBook({int? valuesPerPage, int? numberOfPages}) {
  if (valuesPerPage == null && numberOfPages == null) return {0: this as List<E>};
  valuesPerPage ??= length ~/ numberOfPages!;
  var book = <int, List<E>>{};
  int pageCount = 0;
  var list = this;
  while (list.isNotEmpty && (numberOfPages == null || pageCount < numberOfPages)) {
    book[pageCount++] = take(valuesPerPage).toList();
    list = list.skip(valuesPerPage);
  }
  return book;
}