我没有找到与toRightDisjunction
scalaz
类似的功能,将Option
转换为Either
。为什么cats
没有提供这样的功能?
答案 0 :(得分:4)
scala库通过Option.toLeft
和Option.toRight
提供这些功能:
val s = "Oh no".some
val leftRes: Either[String, Int] = s.toLeft(42)
val rightRes: Either[Int, String] = s.toRight(42)
由于Either[A, B]
在正确偏见后已成为2.12中的事实标准(替换Xor
),因此无需任何其他扩展方法。