partition method

ResultPartition<T> partition()

Partitions the iterable into okParts and errParts in a single pass.

Implementation

ResultPartition<T> partition() {
  final okParts = <Ok<T>>[];
  final errParts = <Err<T>>[];
  for (final result in this) {
    switch (result) {
      case Ok():
        okParts.add(result);
      case Err():
        errParts.add(result);
    }
  }
  return (okParts: okParts, errParts: errParts);
}