sig
module type Generator =
sig
type g
val block : int
val create : unit -> Nocrypto.Rng.S.Generator.g
val generate : g:Nocrypto.Rng.S.Generator.g -> int -> Cstruct.t
val reseed : g:Nocrypto.Rng.S.Generator.g -> Cstruct.t -> unit
val accumulate :
g:Nocrypto.Rng.S.Generator.g ->
(source:int -> Cstruct.t -> unit) Nocrypto.Uncommon.one
val seeded : g:Nocrypto.Rng.S.Generator.g -> bool
end
module type N =
sig
type t
val gen : ?g:Nocrypto.Rng.g -> Nocrypto.Rng.S.N.t -> Nocrypto.Rng.S.N.t
val gen_r :
?g:Nocrypto.Rng.g ->
Nocrypto.Rng.S.N.t -> Nocrypto.Rng.S.N.t -> Nocrypto.Rng.S.N.t
val gen_bits :
?g:Nocrypto.Rng.g -> ?msb:int -> int -> Nocrypto.Rng.S.N.t
end
end