sequenceSet method

Option<Set<T>> sequenceSet()

Turns an Iterable<Result<T>> into an Option<Set<T>>. If all elements are Ok, it returns a Some<Set<T>>. If any element is an Err, it returns None, discarding the specific error.

Implementation

Option<Set<T>> sequenceSet() {
  final buffer = <T>{};
  for (final e in this) {
    switch (e) {
      case Ok(value: final v):
        buffer.add(v);
      case Err():
        return const None();
    }
  }
  return Some(buffer);
}