Module Map_array.Pure

type (!'r, !'a) cont = {
  1. cont : 'b. ('a -> 'r -> unit -> 'b Dagger.Internal.Identity_monad.t) -> 'r -> unit -> 'b Dagger.Internal.Identity_monad.t;
}
type (!'r, 'a) m = handler:'r handler -> ('r, 'a Dagger.Internal.Identity_monad.t) cont
and !'r handler = {
  1. handler : 'a 'b. 'a Dagger__Cps_monad.effect -> ('a Dagger.Internal.Identity_monad.t -> 'r -> unit -> 'b Dagger.Internal.Identity_monad.t) -> 'r -> unit -> 'b Dagger.Internal.Identity_monad.t;
}
val return : 'a -> ('r, 'a) m
val if_ : (handler:'a -> ('b, bool Dagger.Internal.Identity_monad.t) cont) -> (bool -> handler:'a -> ('b, 'c) cont) -> handler:'a -> ('b, 'c) cont
val map : ('r, 'a) m -> ('a -> 'b) -> ('r, 'b) m
val map2 : ('r, 'a) m -> ('r, 'b) m -> ('a -> 'b -> 'c) -> ('r, 'c) m
val map_array : ('r, 'a) m array -> ('a array -> 'b) -> ('r, 'b) m
val bind : ('r, 'a) m -> ('a -> ('r, 'b) m) -> ('r, 'b) m
val handle : 'a Dagger__Cps_monad.effect -> handler:'b handler -> ('b, 'a Dagger.Internal.Identity_monad.t) cont
module Infix : sig ... end