package higher_kinded

  1. Overview
  2. Docs
type ('a, 'y, 'z) t
type higher_kinded
val inject : ('a, 'y, 'z) t -> ('a -> 'y -> 'z -> higher_kinded) t
val project : ('a -> 'y -> 'z -> higher_kinded) t -> ('a, 'y, 'z) t
val (>>=) : ('a -> 'd -> 'e -> higher_kinded) t -> ('a0 -> ('b -> 'd0 -> 'e0 -> higher_kinded) t) -> ('b0 -> 'd1 -> 'e1 -> higher_kinded) t
val (>>|) : ('a -> 'd -> 'e -> higher_kinded) t -> ('a0 -> 'b) -> ('b0 -> 'd0 -> 'e0 -> higher_kinded) t
module Let_syntax : sig ... end
module Monad_infix : sig ... end
val bind : ('a -> 'd -> 'e -> higher_kinded) t -> f:('a0 -> ('b -> 'd0 -> 'e0 -> higher_kinded) t) -> ('b0 -> 'd1 -> 'e1 -> higher_kinded) t
val return : 'a -> ('a0 -> 'b -> 'c -> higher_kinded) t
val map : ('a -> 'd -> 'e -> higher_kinded) t -> f:('a0 -> 'b) -> ('b0 -> 'd0 -> 'e0 -> higher_kinded) t
val join : (('a -> 'd -> 'e -> higher_kinded) t -> 'd0 -> 'e0 -> higher_kinded) t -> ('a0 -> 'd1 -> 'e1 -> higher_kinded) t
val ignore_m : ('a -> 'd -> 'e -> higher_kinded) t -> (unit -> 'd0 -> 'e0 -> higher_kinded) t
val all : ('a -> 'd -> 'e -> higher_kinded) t list -> ('a0 list -> 'd0 -> 'e0 -> higher_kinded) t
val all_unit : (unit -> 'd -> 'e -> higher_kinded) t list -> (unit -> 'd0 -> 'e0 -> higher_kinded) t