partition method
Partitions the iterable into someParts
and noneParts
in a single pass.
Implementation
OptionPartition<T> partition() {
final someParts = <Some<T>>[];
final noneParts = <None<T>>[];
for (final option in this) {
switch (option) {
case Some():
someParts.add(option);
case None():
noneParts.add(option);
}
}
return (someParts: someParts, noneParts: noneParts);
}