pub struct ReadRng<R>(pub R);
Expand description
An RNG that reads random bytes straight from any type supporting std::io::Read
, for example files.
This will work best with an infinite reader, but that is not required.
Panics
ReadRng
uses std::io::Read::read_exact
, which retries on interrupts.
All other errors from the underlying reader, including when it does not have enough data, will panic in case of an error.
Examples
let data = [1, 2, 3, 4, 5, 6, 7, 8];
let mut rng = urandom::rng::ReadRng::new(&data[..]);
println!("{:x}", rng.next::<u32>());
Tuple Fields
0: R
Implementations
Trait Implementations
Auto Trait Implementations
impl<R> RefUnwindSafe for ReadRng<R>where
R: RefUnwindSafe,
impl<R> Send for ReadRng<R>where
R: Send,
impl<R> Sync for ReadRng<R>where
R: Sync,
impl<R> Unpin for ReadRng<R>where
R: Unpin,
impl<R> UnwindSafe for ReadRng<R>where
R: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more