chunk method
returns a list of list of length up to n. example
[0,1,2,3,4,5,6,7,8,9,10].chunk(3) // =>[[0,1,2],[3,4,5],[6,7,8],[9,10]]
Implementation
Iterable<Iterable<T>> chunk(int n) => n <= length
? Iterable<Iterable<T>>.generate(
length % n == 0 ? length ~/ n : (length ~/ n) + 1,
(k) => skip(k * n).take(n))
: [this];