blob: 0c8986c9e8e2d2907840e75087defc082bdd932a (
plain) (
tree)
|
|
object Test extends dotty.runtime.LegacyApp {
import util.Try
val a = "apple"
def fail: String = throw new Exception("Fail!")
def argh: Try[String] = throw new Exception("Argh!")
// No throw tests
def tryMethods(expr: => String): Unit = {
Try(expr) orElse argh
Try(expr).transform(_ => argh, _ => argh)
Try(expr).recoverWith { case e if (a == fail) => Try(a) }
Try(expr).recoverWith { case _ => argh }
Try(expr).getOrElse(a)
// TODO - Fail getOrElse?
Try(expr) orElse argh
Try(expr) orElse Try(a)
Try(expr) map (_ => fail)
Try(expr) map (_ => a)
Try(expr) flatMap (_ => argh)
Try(expr) flatMap (_ => Try(a))
Try(expr) filter (_ => throw new Exception("O NOES"))
Try(expr) filter (_ => true)
Try(expr) recover { case _ => fail }
Try(expr).failed
}
tryMethods(a)
tryMethods(fail)
}
|