STD::SHUFFLE_ORDER_ENGINE(3cxx)
π std::shuffle_order_engine β 3cxx π
okay bestie, welcome to the 3cxx manual page for std::shuffle_order_engine< _RandomNumberEngine, __k >. it's giving βrandom numbers, but shuffled,β and honestly? iconic. β¨
πΈ NAME πΈ
std::shuffle_order_engine< _RandomNumberEngine, __k > β Produces random numbers by reordering random numbers from some base engine.
π SYNOPSIS π
#include <random>
π Public Types π
template<typename _Sseq > using _If_seed_seq = __detail::_If_seed_seq_for< _Sseq, shuffle_order_engine, result_type >typedef _RandomNumberEngine::result_type result_typeβ the type of the generated random value, more tea below π
π§Έ Public Member Functions π§Έ
shuffle_order_engine ()β Constructs a defaultshuffle_order_engineengine.shuffle_order_engine (_RandomNumberEngine &&__rng)β Move constructs ashuffle_order_engineengine.template<typename _Sseq , typename = _If_seed_seq<_Sseq>> shuffle_order_engine (_Sseq &__q)β Generator construct ashuffle_order_engineengine.shuffle_order_engine (const _RandomNumberEngine &__rng)β Copy constructs ashuffle_order_engineengine.shuffle_order_engine (result_type __s)β Seed constructs ashuffle_order_engineengine.const _RandomNumberEngine & base () const noexceptβ signature only here; the fullbase()tea is below.void discard (unsigned long long __z)β signature only here; detail below.result_type operator() ()β signature only here; detail below.void seed ()β Reseeds theshuffle_order_engineobject with the default seed for the underlying base class generator engine.template<typename _Sseq > _If_seed_seq< _Sseq > seed (_Sseq &__q)β Reseeds theshuffle_order_engineobject with the given seed sequence.void seed (result_type __s)β Reseeds theshuffle_order_engineobject with the default seed for the underlying base class generator engine.
β Static Public Member Functions β
static constexpr result_type max ()β signature only here;max()docs are below.static constexpr result_type min ()β signature only here;min()docs are below.
π¬ Static Public Attributes π¬
static constexpr size_t table_sizeβ no description attached in the original, bestie; it's just this static constexpr attribute.
π Friends π
template<typename _RandomNumberEngine1 , size_t __k1, typename _CharT , typename _Traits > std::basic_ostream< _CharT, _Traits > & operator<< (std::basic_ostream< _CharT, _Traits > &__os, const std::shuffle_order_engine< _RandomNumberEngine1, __k1 > &__x)β Inserts the current state of ashuffle_order_enginerandom number generator engine__xinto the output stream__os.bool operator== (const shuffle_order_engine &__lhs, const shuffle_order_engine &__rhs)β the equality friend; full compare tea is below.template<typename _RandomNumberEngine1 , size_t __k1, typename _CharT , typename _Traits > std::basic_istream< _CharT, _Traits > & operator>> (std::basic_istream< _CharT, _Traits > &__is, std::shuffle_order_engine< _RandomNumberEngine1, __k1 > &__x)β Extracts the current state of a% subtract_with_carry_enginerandom number generator engine__xfrom the input stream__is.
π¦ Detailed Description π¦
template<typename _RandomNumberEngine, size_t __k>
class std::shuffle_order_engine< _RandomNumberEngine, __k >"Produces
random numbers by reordering random numbers from some base engine.
The values from the base engine are stored in a sequence of size __k and shuffled by an algorithm that depends on those values.
Since: C++11
yes, that little quote mark before Produces is in the original β Iβm leaving it exactly as found, bestie. no cap. π
π§΅ Member Typedef Documentation π§΅
template<typename _RandomNumberEngine , size_t __k> typedef _RandomNumberEngine::result_type std::shuffle_order_engine< _RandomNumberEngine, __k >::result_type
The type of the generated random value.
π οΈ Constructor & Destructor Documentation π οΈ
π± shuffle_order_engine ()
template<typename _RandomNumberEngine , size_t __k> std::shuffle_order_engine< _RandomNumberEngine, __k >::shuffle_order_engine () [inline]
Constructs a default shuffle_order_engine engine. The underlying engine is default constructed as well.
π shuffle_order_engine (const _RandomNumberEngine & __rng)
template<typename _RandomNumberEngine , size_t __k> std::shuffle_order_engine< _RandomNumberEngine, __k >::shuffle_order_engine (const _RandomNumberEngine & __rng) [inline], [explicit]
Copy constructs a shuffle_order_engine engine. Copies an existing base class random number generator.
Parameters
__rngβ An existing (base class) engine object.
π shuffle_order_engine (_RandomNumberEngine && __rng)
template<typename _RandomNumberEngine , size_t __k> std::shuffle_order_engine< _RandomNumberEngine, __k >::shuffle_order_engine (_RandomNumberEngine && __rng) [inline], [explicit]
Move constructs a shuffle_order_engine engine. Copies an existing base class random number generator.
Parameters
__rngβ An existing (base class) engine object.
the move-construct text says βCopiesβ in the original β not my typo, bestie, Iβm just preserving the lore. π
π° shuffle_order_engine (result_type __s)
template<typename _RandomNumberEngine , size_t __k> std::shuffle_order_engine< _RandomNumberEngine, __k >::shuffle_order_engine (result_type __s) [inline], [explicit]
Seed constructs a shuffle_order_engine engine. Constructs the underlying generator engine seeded with __s.
Parameters
__sβ A seed value for the base class engine.
π§ shuffle_order_engine (_Sseq & __q)
template<typename _RandomNumberEngine , size_t __k> template<typename _Sseq , typename = _If_seed_seq<_Sseq>> std::shuffle_order_engine< _RandomNumberEngine, __k >::shuffle_order_engine (_Sseq & __q) [inline], [explicit]
Generator construct a shuffle_order_engine engine.
Parameters
__qβ A seed sequence.
π§ Member Function Documentation π§
π base ()
template<typename _RandomNumberEngine , size_t __k> const _RandomNumberEngine & std::shuffle_order_engine< _RandomNumberEngine, __k >::base () const [inline], [noexcept]
Gets a const reference to the underlying generator engine object.
ποΈ discard (unsigned long long __z)
template<typename _RandomNumberEngine , size_t __k> void std::shuffle_order_engine< _RandomNumberEngine, __k >::discard (unsigned long long __z) [inline]
Discard a sequence of random numbers.
π max ()
template<typename _RandomNumberEngine , size_t __k> static constexpr result_type std::shuffle_order_engine< _RandomNumberEngine, __k >::max () [inline], [static], [constexpr]
Gets the maximum value in the generated random number range.
π min ()
template<typename _RandomNumberEngine , size_t __k> static constexpr result_type std::shuffle_order_engine< _RandomNumberEngine, __k >::min () [inline], [static], [constexpr]
Gets the minimum value in the generated random number range.
π² operator() ()
template<typename _RandomNumberEngine , size_t __k> shuffle_order_engine< _RandomNumberEngine, __k >::result_type std::shuffle_order_engine< _RandomNumberEngine, __k >::operator() ()
Gets the next value in the generated random number sequence.
References: std::max(), and std::min().
π± seed ()
template<typename _RandomNumberEngine , size_t __k> void std::shuffle_order_engine< _RandomNumberEngine, __k >::seed () [inline]
Reseeds the shuffle_order_engine object with the default seed for the underlying base class generator engine.
π± seed (_Sseq & __q)
template<typename _RandomNumberEngine , size_t __k> template<typename _Sseq > _If_seed_seq< _Sseq > std::shuffle_order_engine< _RandomNumberEngine, __k >::seed (_Sseq & __q) [inline]
Reseeds the shuffle_order_engine object with the given seed sequence.
Parameters
__qβ A seed generator function.
π± seed (result_type __s)
template<typename _RandomNumberEngine , size_t __k> void std::shuffle_order_engine< _RandomNumberEngine, __k >::seed (result_type __s) [inline]
Reseeds the shuffle_order_engine object with the default seed for the underlying base class generator engine.
same description asseed()even though it takes__sβ thatβs literally what the page says. keeping it. π«Ά
π«Ά Friends And Related Symbol Documentation π«Ά
π€ operator<<
template<typename _RandomNumberEngine , size_t __k> template<typename _RandomNumberEngine1 , size_t __k1, typename _CharT , typename _Traits > std::basic_ostream< _CharT, _Traits > & operator<< (std::basic_ostream< _CharT, _Traits > & __os, const std::shuffle_order_engine< _RandomNumberEngine1, __k1 > & __x) [friend]
Inserts the current state of a shuffle_order_engine random number generator engine __x into the output stream __os.
Parameters
__osβ An output stream.__xβ Ashuffle_order_enginerandom number generator engine.
Returns The output stream with the state of __x inserted or in an error state.
βοΈ operator==
template<typename _RandomNumberEngine , size_t __k> bool operator== (const shuffle_order_engine< _RandomNumberEngine, __k > & __lhs, const shuffle_order_engine< _RandomNumberEngine, __k > & __rhs) [friend]
Compares two shuffle_order_engine random number generator objects of the same type for equality.
Parameters
__lhsβ Ashuffle_order_enginerandom number generator object.__rhsβ Anothershuffle_order_enginerandom number generator object.
Returns true if the infinite sequences of generated values would be equal, false otherwise.
π₯ operator>>
template<typename _RandomNumberEngine , size_t __k> template<typename _RandomNumberEngine1 , size_t __k1, typename _CharT , typename _Traits > std::basic_istream< _CharT, _Traits > & operator>> (std::basic_istream< _CharT, _Traits > & __is, std::shuffle_order_engine< _RandomNumberEngine1, __k1 > & __x) [friend]
Extracts the current state of a % subtract_with_carry_engine random number generator engine __x from the input stream __is.
Parameters
__isβ An input stream.__xβ Ashuffle_order_enginerandom number generator engine.
Returns The input stream with the state of __x extracted or in an error state.
βοΈ Author βοΈ
Generated automatically by Doxygen for libstdc++ from the source code.
mwah πβ¨ β source/version: libstd + std::shuffle_o...erEngine, __k > on the 3cxx page, and date: the date printed in the original footer, bestie. slay π«Ά
π¦ where this page comes from
- ubuntu noble: libstdc++-14-doc 14-20240412-0ubuntu1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms