sequenceList method
Turns an Iterable<Option<T>>
into an Option<List<T>>
.
If all elements are Some, it returns a Some<List<T>>
. If any element
is a None, it returns None.
Implementation
Option<List<T>> sequenceList() {
final buffer = <T>[];
for (final e in this) {
if (e.isNone()) return const None();
buffer.add(e.unwrap());
}
return Some(buffer);
}