arrow-effects-extensions / arrow.effects.extensions / IOMonadError

IOMonadError

@extension interface IOMonadError : MonadError<ForIO, Throwable>, IOApplicativeError, IOMonad

Functions

ap open fun <A, B> IOOf<A>.ap(ff: IOOf<(A) -> B>): IO<B>
attempt open fun <A> IOOf<A>.attempt(): IO<Either<Throwable, A>>
handleErrorWith open fun <A> IOOf<A>.handleErrorWith(f: (Throwable) -> IOOf<A>): IO<A>
just open fun <A> just(a: A): IO<A>
map open fun <A, B> IOOf<A>.map(f: (A) -> B): IO<B>
raiseError open fun <A> raiseError(e: Throwable): IO<A>
redeemWith open fun <A, B> IOOf<A>.redeemWith(fe: (Throwable) -> IOOf<B>, fb: (A) -> IOOf<B>): IO<B>

Extension Functions

catch fun <A> ApplicativeError<ForIO, Throwable>.catch(arg1: () -> A): IO<A>
just fun <A> A.just(): IO<A>
just fun <F, E, A> A.just(BR: Bracket<F, E>): Resource<F, E, A>

Inheritors

IOMonadThrow interface IOMonadThrow : MonadThrow<ForIO>, IOMonadError