Exposes the exceptions thrown in the Catchable context.
Constructor for F[A]
that's going to evaluate the
given by-name value in the F
context, with whatever
properties this data-type may have (e.g.
Constructor for F[A]
that's going to evaluate the
given by-name value in the F
context, with whatever
properties this data-type may have (e.g. lazy, async,
exceptions catching, etc).
For pure expressions, in case F[_]
also implements the
Applicative
type-class, then this operation should yield
a value that's equivalent with pure(f)
.
In case this is an applicative, should be isomorphic to:
F.pure(()).map(_ => F.pure(f))
In case F[_]
implements ApplicativeError[Throwable, F]
,
then eval(throw ex)
should be equivalent with raiseError(ex)
.
Lifts any Throwable
error in the Catchable context.
A context that is able to throw or expose thrown exceptions.