Fast randomness source. This is seeded once with secure random data, but is completely deterministic and does not gather more entropy after that.

Synopsis

Declared in <random.h>

class FastRandomContext
    : public RandomMixin<FastRandomContext>

Description

This class is not thread‐safe.

Base Classes

Name

Description

RandomMixin<FastRandomContext>

Mixin class that provides helper randomness functions.

Type Aliases

Name

Description

result_type

Result type of the generator, for the UniformRandomBitGenerator concept.

Member Functions

Name

Description

FastRandomContext [constructor]

Constructors

operator=

Assignment operators

Reseed

Reseed with explicit seed (only for testing).

fillrand

fillrand overloads

operator()

Generate the next random value, for the UniformRandomBitGenerator concept.

rand

Generate a random integer in its entire (non‐negative) range.

rand256

generate a random uint256.

rand32

Generate a random 32‐bit integer.

rand64

Generate a random 64‐bit integer.

rand_exp_duration

Return a duration sampled from an exponential distribution (https://en.wikipedia.org/wiki/Exponential_distribution). Successive events whose intervals are distributed according to this form a memoryless Poisson process. This should be used for repeated network events (e.g. sending a certain type of message) to minimize leaking information to observers.

rand_uniform_delay

Return the time point advanced by a uniform random duration.

rand_uniform_duration

Generate a uniform random duration in the range from 0 (inclusive) to range (exclusive).

randbits

randbits overloads

randbool

Generate a random boolean.

randbytes

randbytes overloads

randrange

randrange overloads

Static Member Functions

Name

Description

max

Largest value the generator can produce.

min

Smallest value the generator can produce.

Protected Member Functions

Name

Description

FlushCache

Discard any random bits buffered from a previous rand64() call.

Created with MrDocs