17    using result_type = 
typename Generator::result_type;
 
   18    constexpr std::size_t result_size = 
sizeof(result_type);
 
   21    std::size_t const complete_iterations = bytes / result_size;
 
   22    std::size_t const bytes_remaining = bytes % result_size;
 
   24    for (
std::size_t count = 0; count < complete_iterations; ++count)
 
   26        result_type 
const v = g();
 
   28        std::memcpy(buffer_start + offset, &v, result_size);
 
   31    if (bytes_remaining > 0)
 
   33        result_type 
const v = g();
 
   34        std::size_t const offset = complete_iterations * result_size;
 
   35        std::memcpy(buffer_start + offset, &v, bytes_remaining);