arrow-core-data / arrow.typeclasses / Bimonad


interface Bimonad<F> : Monad<F>, Comonad<F>


fx Entry point for monad bindings which enables for comprehension. The underlying implementation is based on coroutines. A coroutine is initiated and suspended inside MonadThrowContinuation yielding to Monad.flatMap. Once all the flatMap binds are completed the underlying monad is returned from the act of executing the coroutineopen val fx: BiMonadFx<F>

Extension Functions

cobinding fun <F, B : Any> Comonad<F>.~~cobinding~~(c: suspend ComonadSyntax<F>.() -> B): B

Type Class Hierarchy

Do you like Arrow?

Arrow Org