withoutLast property
Iterable<T>
get
withoutLast
Lazily returns all values without the last one.
Example:
[1, 2, 3].withoutLast; // [1, 2]
[].withoutLast; // [];
Implementation
Iterable<T> get withoutLast sync* {
final hasFirst = iterator.moveNext();
if (!hasFirst) return;
while (true) {
final value = iterator.current;
final isLastOne = !iterator.moveNext();
if (!isLastOne) {
yield value;
} else {
break;
}
}
}