functor
(X : sig
type 'a t
val ( >|= ) : 'a Qcheck_ops.t -> ('a -> 'b) -> 'b Qcheck_ops.t
val monoid_product :
'a Qcheck_ops.t -> 'b Qcheck_ops.t -> ('a * 'b) Qcheck_ops.t
val ( >>= ) :
'a Qcheck_ops.t -> ('a -> 'b Qcheck_ops.t) -> 'b Qcheck_ops.t
end) ->
sig
type 'a t_let = 'a X.t
val ( let+ ) : 'a t_let -> ('a -> 'b) -> 'b t_let
val ( and+ ) : 'a t_let -> 'b t_let -> ('a * 'b) t_let
val ( let* ) : 'a t_let -> ('a -> 'b t_let) -> 'b t_let
val ( and* ) : 'a t_let -> 'b t_let -> ('a * 'b) t_let
end