#![cfg_attr(docsrs, doc(cfg(feature = "rand08")))]
#![deprecated(since = "1.5.0", note = "use a newer version of `rand` crate")]
use super::{RandSource, V7Generator};
use rand_core06::RngCore;
#[derive(Clone, Eq, PartialEq, Debug, Default)]
pub struct Adapter<T>( pub T);
impl<T: RngCore> RandSource for Adapter<T> {
fn next_u32(&mut self) -> u32 {
self.0.next_u32()
}
fn next_u64(&mut self) -> u64 {
self.0.next_u64()
}
}
impl<T: RngCore> V7Generator<Adapter<T>> {
pub const fn with_rand08(rng: T) -> Self {
Self::new(Adapter(rng))
}
}
impl<T: RngCore> RandSource for T {
fn next_u32(&mut self) -> u32 {
self.next_u32()
}
fn next_u64(&mut self) -> u64 {
self.next_u64()
}
}