Skip to main content

RngSource

Enum RngSource 

Source
pub enum RngSource {
    Default,
    Seed(u64),
    Rng(StdRng),
}
Available on crate features std and dataset only.
Expand description

Defines a source for a StdRng.

§Examples

use rand::rngs::StdRng;
use rand::SeedableRng;
use burn_dataset::transform::RngSource;

// Default via `StdRng::from_os_rng()` (`RngSource::Default`)
let system: RngSource = RngSource::default();

// From a fixed seed (`RngSource::Seed`)
let seeded: RngSource = 42.into();

// From an existing rng (`RngSource::Rng`)
let rng = StdRng::seed_from_u64(123);
let with_rng: RngSource = rng.into();

// Forks the parent RNG to derive an independent, deterministic child RNG.
// The original `rng` is modified, and the resulting `RngSource` contains
// a new RNG starting from a unique state.
let mut rng = StdRng::seed_from_u64(123);
let forked: RngSource = (&mut rng).into();

Variants§

§

Default

Build a new rng from the system.

§

Seed(u64)

The rng is passed as a seed.

§

Rng(StdRng)

The rng is passed as an option.

Trait Implementations§

Source§

impl Debug for RngSource

Source§

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

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

impl Default for RngSource

Source§

fn default() -> RngSource

Returns the “default value” for a type. Read more
Source§

impl From<&mut StdRng> for RngSource

Derive an independent RNG from a mutable parent RNG.

This advances the parent RNG and creates a new RNG seeded from its output. The derived RNG is not a clone of the parent’s state, but an independent stream (equivalent to SeedableRng::fork).

Source§

fn from(rng: &mut StdRng) -> RngSource

Converts to this type from the input type.
Source§

impl From<RngSource> for StdRng

Source§

fn from(source: RngSource) -> StdRng

Converts to this type from the input type.
Source§

impl From<StdRng> for RngSource

Source§

fn from(rng: StdRng) -> RngSource

Converts to this type from the input type.
Source§

impl From<u64> for RngSource

Source§

fn from(seed: u64) -> RngSource

Converts to this type from the input type.
Source§

impl PartialEq for RngSource

Source§

fn eq(&self, other: &RngSource) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Eq for RngSource

Source§

impl StructuralPartialEq for RngSource

Auto Trait Implementations§

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<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. 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, 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.