NonFatal
scala.util.control.NonFatal
object 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.")
}
Attributes
- Source
- NonFatal.scala
- Graph
-
- Supertypes
- Self type
-
NonFatal.type
Members list
In this article