Scala либо с кортежем как Right

Предположим, у меня есть следующий код:

val either: Either[String, (Int, Int)] = Right((1,2))
for {
  (a, b) <- either.right
} yield a + b

Когда я оцениваю это в REPL, я получаю

:13: ошибка: конструктор не может быть создан для ожидаемого типа; найдено: (T1, T2) требуется: scala.util.Either[Nothing,(Double, Double)] (a, b) ‹- a.right ^ :14: ошибка: не найдено: значение a } yield a + b ^

Почему у меня такая ошибка? Разве я не могу сопоставить шаблон с кортежем из «Право любого»?


person maks    schedule 05.06.2014    source источник


Ответы (1)