arrow-effects-extensions / arrow.effects.extensions / StateTBracket

StateTBracket

@extension interface StateTBracket<F, S> : Bracket<StateTPartialOf<F, S>, Throwable>, StateTMonadThrow<F, S>

Functions

bracketCase open fun <A, B> StateTOf<F, S, A>.bracketCase(release: (A, ExitCase<Throwable>) -> StateTOf<F, S, Unit>, use: (A) -> StateTOf<F, S, B>): StateT<F, S, B>
MD abstract fun MD(): MonadDefer<F>
ME open fun ME(): MonadError<F, Throwable>

Extension Functions

just fun <A> A.just(): IO<A>
just fun <F, E, A> A.just(BR: Bracket<F, E>): Resource<F, E, A>

Inheritors

StateTMonadDefer interface StateTMonadDefer<F, S> : MonadDefer<StateTPartialOf<F, S>>, StateTBracket<F, S>