package core_extended

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
type 'a gen = unit -> 'a

the type of a random 'a-generator

val fg : float gen

float generator (no nan, inf, etc.)

val cg : char gen

character generator

val nng : int gen

natural number generator

val uig : int gen

unsigned int generator (uniform random in range min_int, max_int)

val pg : 'a gen -> 'b gen -> ('a * 'b) gen

pair generator

val tg : 'a gen -> 'b gen -> 'c gen -> ('a * 'b * 'c) gen

triple generator

val lg : 'a gen -> ?size_gen:int gen -> 'a list gen

list generator

val sg : ?char_gen:char gen -> ?size_gen:int gen -> string gen

string generator

val always : 'a -> 'a gen

generator that always returns given value

val laws : int -> 'a gen -> ('a -> bool) -> 'a option

laws iter gen func applies func repeatedly (iter times) on output of gen, and if func ever returns false, then the input that caused the failure is returned optionally.

val laws_exn : string -> int -> 'a gen -> ('a -> bool) -> unit

Like laws, but throws an exception instead of returning an option.

val repeat : int -> ('a -> unit) -> 'a gen -> unit
OCaml

Innovation. Community. Security.