home | help
std::unifor...it_generator(3)  C++ Standard Libary std::unifor...it_generator(3)

NAME
     std::uniform_random_bit_generator - std::uniform_random_bit_generator

Synopsis
	Defined in header <random>
	template< class G >

	concept uniform_random_bit_generator =
	    std::invocable<G&> &&
	std::unsigned_integral<std::invoke_result_t<G&>> &&
	    requires							       {
     (since C++20)
		{ G::min() } -> std::same_as<std::invoke_result_t<G&>>;
		{ G::max() } -> std::same_as<std::invoke_result_t<G&>>;
		requires std::bool_constant<(G::min() < G::max())>::value;

	    };

	The concept uniform_random_bit_generator<G> specifies that G is the type
     of a
	uniform random bit generator, that is, objects of type G is  a	function
     object
	returning  unsigned  integer values such that each value in the range of
     possible
	results has (ideally) equal probability of being returned.

	Semantic requirements

	uniform_random_bit_generator<G> is modeled only if, given any  object  g
     of type G:

	  * g() is in the range [G::min(), G::max()],
	  * g() has amortized constant complexity.

Notes
	In order to satisfy the requirement std::bool_constant<(G::min() <
	G::max())>::value,  both  G::min() and G::max() must be constant expres-
     sions, and the
	result of the comparison must be true.

http://cppreference.com 	   2024.06.10	   std::unifor...it_generator(3)

home | help