sealed abstract class Try[+R] extends AnyRef
This class represents a computation that can succeed or fail. It has two concrete implementations, Return (for success) and Throw (for failure)
- Alphabetic
- By Inheritance
- Try
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Abstract Value Members
- abstract def apply(): R
Returns the value from this Return or throws the exception if this is a Throw
- abstract def asScala: scala.util.Try[R]
Convert to a scala.util.Try
- abstract def exists(p: (R) => Boolean): Boolean
Returns true if this Try is a Return and the predicate p returns true when applied to its value.
- abstract def filter(p: (R) => Boolean): Try[R]
Converts this to a Throw if the predicate does not obtain.
- abstract def flatMap[R2](f: (R) => Try[R2]): Try[R2]
Returns the given function applied to the value from this Return or returns this if this is a Throw.
Returns the given function applied to the value from this Return or returns this if this is a Throw.
Note The gnarly type parameterization is there for Java compatibility, since Java does not support higher-kinded types.
- abstract def flatten[T](implicit ev: <:<[R, Try[T]]): Try[T]
- abstract def handle[R2 >: R](rescueException: PartialFunction[Throwable, R2]): Try[R2]
Calls the exceptionHandler with the exception if this is a Throw.
Calls the exceptionHandler with the exception if this is a Throw. This is like map for the exception.
- abstract def isReturn: Boolean
Returns true if the Try is a Return, false otherwise.
- abstract def isThrow: Boolean
Returns true if the Try is a Throw, false otherwise.
- abstract def map[X](f: (R) => X): Try[X]
Maps the given function to the value from this Return or returns this if this is a Throw
- abstract def onFailure(rescueException: (Throwable) => Unit): Try[R]
Invoke the function on the error, if the computation was unsuccessful.
Invoke the function on the error, if the computation was unsuccessful. Returns a chained
this
as inrespond
. - abstract def onSuccess(f: (R) => Unit): Try[R]
Invoked only if the computation was successful.
Invoked only if the computation was successful. Returns a chained
this
as inrespond
. - abstract def rescue[R2 >: R](rescueException: PartialFunction[Throwable, Try[R2]]): Try[R2]
Calls the exceptionHandler with the exception if this is a Throw.
Calls the exceptionHandler with the exception if this is a Throw. This is like flatMap for the exception.
Note The gnarly type parameterization is there for Java compatibility, since Java does not support higher-kinded types.
- abstract def throwable: Throwable
Returns the throwable if this is a Throw, else raises IllegalStateException.
Returns the throwable if this is a Throw, else raises IllegalStateException.
Callers should consult isThrow() prior to calling this method to determine whether or not this is a Throw.
This method is intended for Java compatibility. Scala consumers are encouraged to pattern match for Throw(t).
- abstract def withFilter(p: (R) => Boolean): Try[R]
Converts this to a Throw if the predicate does not obtain.
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def andThen[R2](f: (R) => Try[R2]): Try[R2]
Returns the given function applied to the value from this Return or returns this if this is a Throw.
Returns the given function applied to the value from this Return or returns this if this is a Throw. Alias for flatMap
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- def ensure(f: => Unit): Try[R]
Invoked regardless of whether the computation completed successfully or unsuccessfully.
Invoked regardless of whether the computation completed successfully or unsuccessfully. Implemented in terms of
respond
so that subclasses control evaluation order. Returns a chainedthis
as inrespond
. - final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- def foreach(f: (R) => Unit): Unit
Applies the given function f if this is a Result.
- def get(): R
Returns the value from this Return or throws the exception if this is a Throw.
Returns the value from this Return or throws the exception if this is a Throw. Alias for apply()
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def getOrElse[R2 >: R](default: => R2): R2
Returns the value from this Return or the given argument if this is a Throw.
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def respond(k: (Try[R]) => Unit): Try[R]
Invokes the given closure when the value is available.
Invokes the given closure when the value is available. Returns another 'This[R]' that is guaranteed to be available only *after* 'k' has run. This enables the enforcement of invocation ordering.
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toOption: Option[R]
Returns None if this is a Throw or a Some containing the value if this is a Return
- def toString(): String
- Definition Classes
- AnyRef → Any
- def transform[R2](f: (Try[R]) => Try[R2]): Try[R2]
Invokes the given transformation when the value is available, returning the transformed value.
Invokes the given transformation when the value is available, returning the transformed value. This method is like a combination of flatMap and rescue. This method is typically used for more imperative control-flow than flatMap/rescue which often exploits the Null Object Pattern.
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()