arrow-mtl / arrow.mtl.extensions / StateTMonadLogic

StateTMonadLogic

@extension interface StateTMonadLogic<S, F> : MonadLogic<StateTPartialOf<S, F>>, StateTMonadPlus<S, F>

Functions

AF open fun AF(): Alternative<F>
ifThen open fun <A, B> Kind<StateTPartialOf<S, F>, A>.ifThen(fb: Kind<StateTPartialOf<S, F>, B>, ffa: (A) -> Kind<StateTPartialOf<S, F>, B>): Kind<StateTPartialOf<S, F>, B>
interleave open fun <A> Kind<StateTPartialOf<S, F>, A>.interleave(other: Kind<StateTPartialOf<S, F>, A>): Kind<StateTPartialOf<S, F>, A>
MF open fun MF(): Monad<F>
ML abstract fun ML(): MonadLogic<F>
once open fun <A> Kind<StateTPartialOf<S, F>, A>.once(): Kind<StateTPartialOf<S, F>, A>
splitM open fun <A> Kind<StateTPartialOf<S, F>, A>.splitM(): Kind<StateTPartialOf<S, F>, Option<Tuple2<Kind<StateTPartialOf<S, F>, A>, A>>>
unweave open fun <A, B> Kind<StateTPartialOf<S, F>, A>.unweave(ffa: (A) -> Kind<StateTPartialOf<S, F>, B>): Kind<StateTPartialOf<S, F>, B>

Do you like Arrow?

Arrow Org
<