NonFatal
Extractor of non-fatal Throwables. Will not match fatal errors like VirtualMachineError
(for example, OutOfMemoryError
and StackOverflowError
, subclasses of VirtualMachineError
), ThreadDeath
,
LinkageError
, InterruptedException
, ControlThrowable
.
Note that scala.util.control.ControlThrowable, an internal Throwable, is not matched by
NonFatal
(and would therefore be thrown).
For example, all harmless Throwables can be caught by:
try {
// dangerous stuff
} catch {
case NonFatal(e) => log.error(e, "Something not that bad.")
// or
case e if NonFatal(e) => log.error(e, "Something not that bad.")
}
- Source
- NonFatal.scala
Value members
Concrete methods
Returns true if the provided Throwable
is to be considered non-fatal, or false if it is to be considered fatal
Returns true if the provided Throwable
is to be considered non-fatal, or false if it is to be considered fatal
- Source
- NonFatal.scala
Returns Some(t) if NonFatal(t) == true, otherwise None
Returns Some(t) if NonFatal(t) == true, otherwise None
- Source
- NonFatal.scala