Creates a new future that will handle any matching throwable that this future might contain by assigning it a value of another future.
Creates a new future that will handle any matching throwable that this future might contain by assigning it a value of another future.
If there is no match, or if this future contains a valid result then the new future will contain the same result.
Example:
val f = future { Int.MaxValue } future (6 / 0) handle { case e: ArithmeticException => f } // result: Int.MaxValue
Like recoverWith from std lib, related to rescue/handle in twitter.