sig
type random = Random.State.t
val make_random : unit -> Generator.random
val make_random_seed : int -> Generator.random
val make_random_full : int array -> Generator.random
type 'a t = (Generator.random -> 'a) * ('a -> string)
val unit : unit Generator.t
val bool : bool Generator.t
val make_bool : int -> int -> bool Generator.t
val int : int Generator.t
val pos_int : int Generator.t
val neg_int : int Generator.t
val make_int : int -> int -> int Generator.t
val int32 : int32 Generator.t
val pos_int32 : int32 Generator.t
val neg_int32 : int32 Generator.t
val make_int32 : int32 -> int32 -> int32 Generator.t
val int64 : int64 Generator.t
val pos_int64 : int64 Generator.t
val neg_int64 : int64 Generator.t
val make_int64 : int64 -> int64 -> int64 Generator.t
val nativeint : nativeint Generator.t
val pos_nativeint : nativeint Generator.t
val neg_nativeint : nativeint Generator.t
val make_nativeint : nativeint -> nativeint -> nativeint Generator.t
val char : char Generator.t
val digit : char Generator.t
val digit_bin : char Generator.t
val digit_oct : char Generator.t
val digit_hex : char Generator.t
val letter : char Generator.t
val alphanum : char Generator.t
val string : int Generator.t -> char Generator.t -> string Generator.t
val strings :
string -> int Generator.t -> string Generator.t -> string Generator.t
val number : int Generator.t -> string Generator.t
val number_bin : int Generator.t -> string Generator.t
val number_oct : int Generator.t -> string Generator.t
val number_hex : int Generator.t -> string Generator.t
val word : int Generator.t -> string Generator.t
val words : int Generator.t -> int Generator.t -> string Generator.t
val float : float Generator.t
val make_float : float -> float -> float Generator.t
val complex :
float Generator.t -> float Generator.t -> Complex.t Generator.t
type 'a outcome = Value of 'a | Exception of exn
val total_function : 'b Generator.t -> ('a -> 'b) Generator.t
val partial_function :
'b Generator.outcome Generator.t -> ('a -> 'b) Generator.t
val array : int Generator.t -> 'a Generator.t -> 'a array Generator.t
val list : int Generator.t -> 'a Generator.t -> 'a list Generator.t
val option : bool Generator.t -> 'a Generator.t -> 'a option Generator.t
val ref : 'a Generator.t -> 'a Pervasives.ref Generator.t
val buffer : string Generator.t -> Buffer.t Generator.t
module type Gen = sig type g val g : Generator.Gen.g Generator.t end
module Map :
functor (M : Map.S) ->
functor (G : sig type g = M.key val g : g t end) ->
sig
val gen : int Generator.t -> 'a Generator.t -> 'a M.t Generator.t
end
module Set :
functor (S : Set.S) ->
functor (G : sig type g = S.elt val g : g t end) ->
sig val gen : int Generator.t -> S.t Generator.t end
val hashtbl :
int Generator.t ->
'a Generator.t -> 'b Generator.t -> ('a, 'b) Hashtbl.t Generator.t
val queue : int Generator.t -> 'a Generator.t -> 'a Queue.t Generator.t
val stack : int Generator.t -> 'a Generator.t -> 'a Stack.t Generator.t
val weak :
int Generator.t -> 'a option Generator.t -> 'a Weak.t Generator.t
module Weak :
functor (W : Weak.S) ->
functor (G : sig type g = W.data val g : g t end) ->
sig val gen : int Generator.t -> W.t Generator.t end
val lift : 'a -> string -> 'a Generator.t
val select_list : 'a list -> ('a -> string) -> 'a Generator.t
val select_list_weighted :
('a * int) list -> ('a -> string) -> 'a Generator.t
val select_array : 'a array -> ('a -> string) -> 'a Generator.t
val select_array_weighted :
('a * int) array -> ('a -> string) -> 'a Generator.t
val choose_list : 'a Generator.t list -> 'a Generator.t
val choose_list_weighted : ('a Generator.t * int) list -> 'a Generator.t
val choose_array : 'a Generator.t array -> 'a Generator.t
val choose_array_weighted : ('a Generator.t * int) array -> 'a Generator.t
val filter : ('a -> bool) -> 'a Generator.t -> 'a Generator.t
val transform : ('a -> 'a) -> 'a Generator.t -> 'a Generator.t
val map1 : ('a -> 'b) -> ('b -> string) -> 'a Generator.t -> 'b Generator.t
val map2 :
('a -> 'b -> 'c) ->
('c -> string) -> 'a Generator.t * 'b Generator.t -> 'c Generator.t
val map3 :
('a -> 'b -> 'c -> 'd) ->
('d -> string) ->
'a Generator.t * 'b Generator.t * 'c Generator.t -> 'd Generator.t
val map4 :
('a -> 'b -> 'c -> 'd -> 'e) ->
('e -> string) ->
'a Generator.t * 'b Generator.t * 'c Generator.t * 'd Generator.t ->
'e Generator.t
val map5 :
('a -> 'b -> 'c -> 'd -> 'e -> 'f) ->
('f -> string) ->
'a Generator.t * 'b Generator.t * 'c Generator.t * 'd Generator.t *
'e Generator.t -> 'f Generator.t
val zip1 : 'a Generator.t -> 'a Generator.t
val zip2 : 'a Generator.t -> 'b Generator.t -> ('a * 'b) Generator.t
val zip3 :
'a Generator.t ->
'b Generator.t -> 'c Generator.t -> ('a * 'b * 'c) Generator.t
val zip4 :
'a Generator.t ->
'b Generator.t ->
'c Generator.t -> 'd Generator.t -> ('a * 'b * 'c * 'd) Generator.t
val zip5 :
'a Generator.t ->
'b Generator.t ->
'c Generator.t ->
'd Generator.t -> 'e Generator.t -> ('a * 'b * 'c * 'd * 'e) Generator.t
val apply1 : ('a -> 'b) -> 'a -> 'b
val apply2 : ('a -> 'b -> 'c) -> 'a * 'b -> 'c
val apply3 : ('a -> 'b -> 'c -> 'd) -> 'a * 'b * 'c -> 'd
val apply4 : ('a -> 'b -> 'c -> 'd -> 'e) -> 'a * 'b * 'c * 'd -> 'e
val apply5 :
('a -> 'b -> 'c -> 'd -> 'e -> 'f) -> 'a * 'b * 'c * 'd * 'e -> 'f
val tuple_apply1 : ('a -> 'b) -> 'a -> 'b
val tuple_apply2 : ('a * 'b -> 'c) -> 'a -> 'b -> 'c
val tuple_apply3 : ('a * 'b * 'c -> 'd) -> 'a -> 'b -> 'c -> 'd
val tuple_apply4 : ('a * 'b * 'c * 'd -> 'e) -> 'a -> 'b -> 'c -> 'd -> 'e
val tuple_apply5 :
('a * 'b * 'c * 'd * 'e -> 'f) -> 'a -> 'b -> 'c -> 'd -> 'e -> 'f
end