C++ Mathematical Expression Toolkit (ExprTk) release
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
random_uint< T > Struct Template Referencefinal
Inheritance diagram for random_uint< T >:
[legend]
Collaboration diagram for random_uint< T >:
[legend]

Public Member Functions

 random_uint ()
 
operator() (const T &r0, const T &r1) override
 
- Public Member Functions inherited from exprtk::ifunction< T >
 ifunction (const std::size_t &pc)
 
virtual ~ifunction ()
 
virtual T operator() ()
 
virtual T operator() (const T &)
 
virtual T operator() (const T &, const T &, const T &)
 
virtual T operator() (const T &, const T &, const T &, const T &)
 
virtual T operator() (const T &, const T &, const T &, const T &, const T &)
 
virtual T operator() (const T &, const T &, const T &, const T &, const T &, const T &)
 
virtual T operator() (const T &, const T &, const T &, const T &, const T &, const T &, const T &)
 
virtual T operator() (const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &)
 
virtual T operator() (const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &)
 
virtual T operator() (const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &)
 
virtual T operator() (const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &)
 
virtual T operator() (const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &)
 
virtual T operator() (const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &)
 
virtual T operator() (const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &)
 
virtual T operator() (const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &)
 
virtual T operator() (const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &)
 
virtual T operator() (const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &)
 
virtual T operator() (const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &)
 
virtual T operator() (const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &)
 
virtual T operator() (const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &, const T &)
 
- Public Member Functions inherited from exprtk::function_traits
 function_traits ()
 
bool & allow_zero_parameters ()
 
bool & has_side_effects ()
 
std::size_t & min_num_args ()
 
std::size_t & max_num_args ()
 

Public Attributes

std::mt19937 generator
 
- Public Attributes inherited from exprtk::ifunction< T >
std::size_t param_count
 

Detailed Description

template<typename T>
struct random_uint< T >

Definition at line 30 of file exprtk_miller_rabin_primality_test.cpp.

Constructor & Destructor Documentation

◆ random_uint()

template<typename T >
random_uint< T >::random_uint ( )
inline

Definition at line 34 of file exprtk_miller_rabin_primality_test.cpp.

36 {
37 std::random_device device;
38 std::array<unsigned int,std::mt19937::state_size> seed;
39 std::generate_n(seed.data(), seed.size(), std::ref(device));
40 std::seed_seq seq(std::begin(seed), std::end(seed));
41 generator.seed(seq);
42 }

References random_uint< T >::generator.

Member Function Documentation

◆ operator()()

template<typename T >
T random_uint< T >::operator() ( const T &  r0,
const T &  r1 
)
inlineoverridevirtual

Reimplemented from exprtk::ifunction< T >.

Definition at line 44 of file exprtk_miller_rabin_primality_test.cpp.

45 {
46 std::uniform_int_distribution<std::uint64_t>
47 distribution { static_cast<std::uint64_t>(r0), static_cast<std::uint64_t>(r1) };
48
49 return static_cast<T>(distribution(generator));
50 }

References random_uint< T >::generator.

Member Data Documentation

◆ generator

template<typename T >
std::mt19937 random_uint< T >::generator

The documentation for this struct was generated from the following file: