Option
대신 Scalaz 'traverse
및 traverseU
을 Either
으로 사용할 수 있습니까? 다음 코드를Scalaz의 트래버스 및 트래버스 U를 사용하는 방법
는 : 모든 것이 잘 갔다 경우 하나 개 이상의 장애 또는 Left(list)
가있는 경우
val list = List(1, 2, 3)
def f(i: Int): Either[Int, String] =
if (i > 2) Left(i)
else Right("must be lower than 3")
나는 f
와 list
을 통과하고 중 첫 번째 Right(msg)
을 반환합니다.
의도적으로 왼쪽과 오른쪽으로 전환 했습니까? 일반적으로 Left는 처리 실패를 의미합니다. – Dimitri
@Dimitri 아니, 전혀 목적에 없었어! 나는 OCaml에서 왔고 아직 스칼라의 관례에 익숙하지 않다. 명확하게 해 주셔서 감사합니다. – Antoine
스칼라가 오른쪽 대칭 인 * 오른쪽 * 하나는 꽤 대칭입니다. (실제로는 조금 너무 많아서 종종 불편합니다.) –