Module type Applicative_intf.Applicative
module type Applicative_infix = Applicative_infixmodule type Applicative_infix2 = Applicative_infix2module type Applicative_infix3 = Applicative_infix3module type Basic = Basicmodule type Basic2 = Basic2module type Basic3 = Basic3module type Basic_using_map2 = Basic_using_map2module type Basic2_using_map2 = Basic2_using_map2module type Basic3_using_map2 = Basic3_using_map2module type Let_syntax = Let_syntaxmodule type Let_syntax2 = Let_syntax2module type Let_syntax3 = Let_syntax3module type S = Smodule type S2 = S2module type S3 = S3module Make_let_syntax : functor (X : For_let_syntax) -> functor (Intf : sig ... end) -> functor (Impl : Intf.S) -> Let_syntax with type 'a t := 'a X.t with module Open_on_rhs_intf := Intfmodule Make_let_syntax2 : functor (X : For_let_syntax2) -> functor (Intf : sig ... end) -> functor (Impl : Intf.S) -> Let_syntax2 with type ('a, 'e) t := ('a, 'e) X.t with module Open_on_rhs_intf := Intfmodule Make_let_syntax3 : functor (X : For_let_syntax3) -> functor (Intf : sig ... end) -> functor (Impl : Intf.S) -> Let_syntax3 with type ('a, 'd, 'e) t := ('a, 'd, 'e) X.t with module Open_on_rhs_intf := Intfmodule Make_using_map2 : functor (X : Basic_using_map2) -> S with type 'a t := 'a X.tmodule Make2_using_map2 : functor (X : Basic2_using_map2) -> S2 with type ('a, 'e) t := ('a, 'e) X.tmodule Make3_using_map2 : functor (X : Basic3_using_map2) -> S3 with type ('a, 'd, 'e) t := ('a, 'd, 'e) X.t