Functor Applicative.Make3

module Make3: 
functor (A : Basic3) -> S3 with type ('p, 'q, 'a) t := ('p, 'q, 'a) A.t
Parameters:
A : Basic3

type ('_, '_, '_) t 
include Applicative.Basic3
include Functor.S3
val ap' : ('p, 'q, 'a -> 'b) t ->
('p, 'q, 'a) t -> ('p, 'q, 'b) t
val (<*>) : ('p, 'q, 'a -> 'b) t ->
('p, 'q, 'a) t -> ('p, 'q, 'b) t
val (<~>) : ('p, 'q, 'a -> 'b) t ->
(unit -> ('p, 'q, 'a) t) -> ('p, 'q, 'b) t
val discard_left : ('p, 'q, 'a) t ->
(unit -> ('p, 'q, 'b) t) -> ('p, 'q, 'b) t
val discard_right : ('p, 'q, 'a) t ->
(unit -> ('p, 'q, 'b) t) -> ('p, 'q, 'a) t
val repeat : int -> ('p, 'q, 'a) t -> ('p, 'q, 'a list) t
val repeat_ : int -> ('p, 'q, 'a) t -> ('p, 'q, unit) t
val forever : ('p, 'q, 'a) t -> ('p, 'q, 'b) t