arrow-effects-extensions / arrow.effects.extensions / IOApplicativeError

IOApplicativeError

@extension interface IOApplicativeError : ApplicativeError<ForIO, Throwable>, IOApplicative

Functions

attempt open fun <A> IOOf<A>.attempt(): IO<Either<Throwable, A>>
handleError open fun <A> IOOf<A>.handleError(f: (Throwable) -> A): IO<A>
handleErrorWith open fun <A> IOOf<A>.handleErrorWith(f: (Throwable) -> IOOf<A>): IO<A>
raiseError open fun <A> raiseError(e: Throwable): IO<A>
redeem open fun <A, B> IOOf<A>.redeem(fe: (Throwable) -> B, fb: (A) -> 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

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