arrow-fx / arrow.fx.extensions / ResourceMonad

ResourceMonad

interface ~~ResourceMonad~~<F, E> : Monad<ResourcePartialOf<F, E>>, ResourceSelective<F, E> Deprecated: The IO datatype and it’s related type classes will disappear in Arrow 0.13.0. All useful operations are offered directly over suspend functions by Arrow Fx Coroutines. https://arrow-kt.io/docs/fx/async/

Functions

ap open fun <A, B> ResourceOf<F, E, A>.ap(ff: Kind<ResourcePartialOf<F, E>, (A) -> B>): Resource<F, E, B>
BR abstract fun BR(): Bracket<F, E>
flatMap open fun <A, B> ResourceOf<F, E, A>.flatMap(f: (A) -> ResourceOf<F, E, B>): Resource<F, E, B>
map open fun <A, B> Kind<ResourcePartialOf<F, E>, A>.map(f: (A) -> B): Resource<F, E, B>
select open fun <A, B> ResourceOf<F, E, Either<A, B>>.select(f: Kind<ResourcePartialOf<F, E>, (A) -> B>): Resource<F, E, B>
tailRecM open fun <A, B> tailRecM(a: A, f: (A) -> Kind<ResourcePartialOf<F, E>, Either<A, B>>): Resource<F, E, B>

Inheritors

ResourceMonadIO interface ~~ResourceMonadIO~~<F, E> : MonadIO<ResourcePartialOf<F, E>>, ResourceMonad<F, E>

Do you like Arrow?

Arrow Org
<