Module Cstubs_applicative.Make_applicative_with_let
Parameters
module X : Base.Applicative.Basic
Signature
include Base.Applicative.S with type 'a t := 'a X.t
val return : 'a -> 'a X.t
val map : 'a X.t -> f:( 'a -> 'b ) -> 'b X.t
val both : 'a X.t -> 'b X.t -> ('a * 'b) X.t
val (<*>) : ( 'a -> 'b ) X.t -> 'a X.t -> 'b X.t
val (<*) : 'a X.t -> unit X.t -> 'a X.t
val (*>) : unit X.t -> 'a X.t -> 'a X.t
val (>>|) : 'a X.t -> ( 'a -> 'b ) -> 'b X.t
val apply : ( 'a -> 'b ) X.t -> 'a X.t -> 'b X.t
val map2 : 'a X.t -> 'b X.t -> f:( 'a -> 'b -> 'c ) -> 'c X.t
val map3 : 'a X.t -> 'b X.t -> 'c X.t -> f:( 'a -> 'b -> 'c -> 'd ) -> 'd X.t
val all : 'a X.t list -> 'a list X.t
val all_unit : unit X.t list -> unit X.t
include Base.Applicative.Let_syntax with type 'a t := 'a X.t