任一模式匹配的替代方案

N A*_*N A 3 scala

是否有以下类型的 Either 模式匹配?像 Right 和 Left 上的 map 一样返回不同类型的 Either 。我不想到处指定左和右。

val v:Either[Throwable, String] = Right("Hello")
val result: Either[Int, String] = v match {
  case Left(ex) => Left(ex.getMessage.size)
  case Right(m) => Right(m)
}
Run Code Online (Sandbox Code Playgroud)

N A*_*N A 5

下面不必使用模式匹配

v.left.map(_.getMessage).right.map(_)
Run Code Online (Sandbox Code Playgroud)