C++ named requirements: SeedSequence (since C++11)

From cppreference.com
C++ named requirements

A SeedSequence is an object that produces unsigned integer values i in the range 0 ≤ i < 2 32 based on a consumed range of integer data.

Requirements

Expression Type Notes Complexity
S::result_type T Unsigned integer of at least 32 bits. Compile-time
S() Creates a seed sequence with the same initial state as other default-constructed seed sequences of type S . Constant
S(ib, ie) Creates a seed sequence with internal state depending on some or all supplied input bits by [ ib , ie ) . O(ie - ib)
S(il) The same as S(il.begin(), il.end()) .
q.generate(rb, re) void Fills [ rb , re ) with 32-bit quantities depending on the initial supplied values and potential previous calls to generate . If rb == re , it does nothing. O(re - rb)
r.size() size_t The amount of 32-bit integers copied by param . Constant
r.param(ob) void Copies 32-bit values to ob that would reproduce the current state of the object if passed to a constructor of S . O(r.size())

See also