Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
std::unifor...it_generator(3) C++ Standard Libarystd::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 func-
       tion 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 ex-
       pressions, and the
	  result of the	comparison must	be true.

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

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=std::uniform_random_bit_generator&sektion=3&manpath=FreeBSD+Ports+15.0>

home | help