Module Mavryk_test_helpers.Random_pure

Pseudo-random value generator.

Similar to Stdlib.Random, but with a functional interface.

type t

Random generator state, immutable.

Initialization

val of_seed : int64 -> t

Initialize from an integer.

val split : t -> t * t

Split the state.

val next_int64 : t -> int64 * t

Generate 64 random bits, and return a new state.

Generate values

A state should be used only once to ensure the outputs are independent.

val int : t -> int -> int

Generate an int uniformly in a range [0, max).

This does not advance the state of the generator.

val bool : t -> bool

Generate a bool.

This does not advance the state of the generator.