Struct rand::rngs::adapter::ReadRng [−][src]
pub struct ReadRng<R> { /* fields omitted */ }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.
This can be used with /dev/urandom on Unix but it is recommended to use
OsRng instead.
Panics
ReadRng uses std::io::read_exact, which retries on interrupts. All other
errors from the underlying reader, including when it does not have enough
data, will only be reported through try_fill_bytes. The other
RngCore methods will panic in case of an error.
Example
use rand::{read, Rng}; let data = vec![1, 2, 3, 4, 5, 6, 7, 8]; let mut rng = read::ReadRng::new(&data[..]); println!("{:x}", rng.gen::<u32>());
Methods
impl<R: Read> ReadRng<R>[src]
impl<R: Read> ReadRng<R>Trait Implementations
impl<R: Debug> Debug for ReadRng<R>[src]
impl<R: Debug> Debug for ReadRng<R>fn fmt(&self, f: &mut Formatter) -> Result[src]
fn fmt(&self, f: &mut Formatter) -> ResultFormats the value using the given formatter. Read more
impl<R: Read> RngCore for ReadRng<R>[src]
impl<R: Read> RngCore for ReadRng<R>fn next_u32(&mut self) -> u32[src]
fn next_u32(&mut self) -> u32Return the next random u32. Read more
fn next_u64(&mut self) -> u64[src]
fn next_u64(&mut self) -> u64Return the next random u64. Read more
fn fill_bytes(&mut self, dest: &mut [u8])[src]
fn fill_bytes(&mut self, dest: &mut [u8])Fill dest with random data. Read more
fn try_fill_bytes(&mut self, dest: &mut [u8]) -> Result<(), Error>[src]
fn try_fill_bytes(&mut self, dest: &mut [u8]) -> Result<(), Error>Fill dest entirely with random data. Read more