nanorand::rand::pcg64

Struct Pcg64

source
pub struct Pcg64 { /* private fields */ }
Expand description

An instance of the Pcg64 random number generator. Seeded from the system entropy generator when available. This generator is NOT cryptographically secure.

Implementations§

source§

impl Pcg64

source

pub fn new() -> Self

Create a new Pcg64 instance, seeding from the system’s default source of entropy.

source

pub const fn new_seed(seed: u128) -> Self

Create a new Pcg64 instance, using a provided seed.

Trait Implementations§

source§

impl Clone for Pcg64

source§

fn clone(&self) -> Self

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Pcg64

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for Pcg64

source§

fn default() -> Self

Create a new Pcg64 instance, seeding from the system’s default source of entropy.

source§

impl Display for Pcg64

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Rng<8> for Pcg64

source§

fn rand(&mut self) -> [u8; 8]

Generates a random sequence of bytes, seeding from the internal state.
source§

fn generate<Generated>(&mut self) -> Generated
where Generated: RandomGen<Self, OUTPUT>,

Generates a random of the specified type, seeding from the internal state.
source§

fn fill_bytes<Bytes>(&mut self, buffer: Bytes)
where Bytes: AsMut<[u8]>,

Fill an array of bytes with randomness.
source§

fn fill<Contents, Array>(&mut self, target: Array)
where Contents: RandomGen<Self, OUTPUT>, Array: AsMut<[Contents]>,

Fill an array with the specified type.
source§

fn generate_range<Number, Bounds>(&mut self, range: Bounds) -> Number
where Number: RandomRange<Self, OUTPUT>, Bounds: RangeBounds<Number>,

Generates a random of the specified type, seeding from the internal state.
source§

fn shuffle<Contents, Array>(&mut self, target: Array)
where Array: AsMut<[Contents]>,

Shuffle a slice, using the RNG.
source§

impl SeedableRng<16, 8> for Pcg64

source§

fn reseed(&mut self, seed: [u8; 16])

Re-seed the RNG with the specified bytes.

Auto Trait Implementations§

§

impl Freeze for Pcg64

§

impl RefUnwindSafe for Pcg64

§

impl Send for Pcg64

§

impl Sync for Pcg64

§

impl Unpin for Pcg64

§

impl UnwindSafe for Pcg64

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for T
where T: Clone,

source§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T> ToString for T
where T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

source§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.