25#if defined(HAVE_ASIO_RESOLVER_RESULTS_DATA)
27template <
typename RESULTS>
30 auto *
data = results.data();
33 std::shuffle(
data->begin(),
data->end(), prng);
36template <
typename RESULTS>
39 auto *
data = results.data();
58 {
return e.endpoint().
address().is_v4() != v4; });
61#elif defined(ASIO_RESOLVER_RESULTS_DATA_REQUIRED)
62#error ASIO_RESOLVER_RESULTS_DATA_REQUIRED is defined but Asio results data are not available
65template <
typename RESULTS>
70template <
typename RESULTS>
Abstract base class for random number generators.
Data data(const void *bytes, CFIndex length)
void randomize_results(RESULTS &results, RandomAPI &prng)
void filter_by_ip_version(RESULTS &results, const IP::Addr::Version ip_ver)
Implementation of the base classes for random number generators.