range function
Generates an integer sequence, similar to Python's range.
range(n)returns0 .. n-1.range(start, end)returnsstart .. end-1. Whenend < start, the bounds are automatically swapped so the result is never empty.
Implementation
Iterable<int> range(int lenOrStart, [int? end]) {
if (end == null) {
return Iterable<int>.generate(lenOrStart, (int index) => index);
}
int start = lenOrStart;
int stop = end;
if (stop < start) {
final int tmp = start;
start = stop;
stop = tmp;
}
final int length = stop - start;
return Iterable<int>.generate(length, (int index) => start + index);
}