Chcę podzielić List[Either[A, B]]
na dwóch listach.Jak podzielić listę [Albo [A, B]]
Czy istnieje lepszy sposób?
def lefts[A, B](eithers : List[Either[A, B]]) : List[A] = eithers.collect { case Left(l) => l}
def rights[A, B](eithers : List[Either[A, B]]) : List[B] = eithers.collect { case Right(r) => r}
Edycja:. (., Lefts.map (_ left.get) rights.map (_ right.get)) staje (lefts.flatMap (_ left.toOption) rights.flatMap (_. right.toOption)) – Lombric