我想一個Try[Option[T]]
壓扁成Try[T]
如何扁平化一個Try [選項[T]
這裏是我的代碼
def flattenTry[T](t: Try[Option[T]]) : Try[T] = {
t match {
case f : Failure[T] => f.asInstanceOf[Failure[T]]
case Success(e) =>
e match {
case None => Failure[T](new Exception("Parsing error"))
case Some(s) => Success(s)
}
}
}
有沒有更好的辦法?