PRNConcreteBoundedGenerator

Trait PRNConcreteBoundedGenerator 

Source
pub trait PRNConcreteBoundedGenerator<TGenerator: PRNGenerator>: Sized + ReprC {
    // Required method
    fn generate<TBounds: RangeBounds<Self>>(
        generator: &mut TGenerator,
        range: TBounds,
    ) -> Self;
}
Expand description

Represents a trait for generating pseudo-random data

Required Methods§

Source

fn generate<TBounds: RangeBounds<Self>>( generator: &mut TGenerator, range: TBounds, ) -> Self

Generates a new pseudo random instance of itself in given range.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl PRNConcreteBoundedGenerator<DefaultFastPRNG> for f32

Source§

fn generate<TBounds: RangeBounds<Self>>( generator: &mut DefaultFastPRNG, range: TBounds, ) -> Self

Source§

impl PRNConcreteBoundedGenerator<DefaultFastPRNG> for f64

Source§

fn generate<TBounds: RangeBounds<Self>>( generator: &mut DefaultFastPRNG, range: TBounds, ) -> Self

Source§

impl PRNConcreteBoundedGenerator<DefaultFastPRNG> for i32

Source§

fn generate<TBounds: RangeBounds<Self>>( generator: &mut DefaultFastPRNG, range: TBounds, ) -> Self

Source§

impl PRNConcreteBoundedGenerator<DefaultFastPRNG> for i64

Source§

fn generate<TBounds: RangeBounds<Self>>( generator: &mut DefaultFastPRNG, range: TBounds, ) -> Self

Source§

impl PRNConcreteBoundedGenerator<DefaultFastPRNG> for u32

Source§

fn generate<TBounds: RangeBounds<Self>>( generator: &mut DefaultFastPRNG, range: TBounds, ) -> Self

Source§

impl PRNConcreteBoundedGenerator<DefaultFastPRNG> for u64

Source§

fn generate<TBounds: RangeBounds<Self>>( generator: &mut DefaultFastPRNG, range: TBounds, ) -> Self

Source§

impl PRNConcreteBoundedGenerator<DefaultSecurePRNG> for f32

Source§

fn generate<TBounds: RangeBounds<Self>>( generator: &mut DefaultSecurePRNG, range: TBounds, ) -> Self

Source§

impl PRNConcreteBoundedGenerator<DefaultSecurePRNG> for f64

Source§

fn generate<TBounds: RangeBounds<Self>>( generator: &mut DefaultSecurePRNG, range: TBounds, ) -> Self

Source§

impl PRNConcreteBoundedGenerator<DefaultSecurePRNG> for i32

Source§

fn generate<TBounds: RangeBounds<Self>>( generator: &mut DefaultSecurePRNG, range: TBounds, ) -> Self

Source§

impl PRNConcreteBoundedGenerator<DefaultSecurePRNG> for i64

Source§

fn generate<TBounds: RangeBounds<Self>>( generator: &mut DefaultSecurePRNG, range: TBounds, ) -> Self

Source§

impl PRNConcreteBoundedGenerator<DefaultSecurePRNG> for u32

Source§

fn generate<TBounds: RangeBounds<Self>>( generator: &mut DefaultSecurePRNG, range: TBounds, ) -> Self

Source§

impl PRNConcreteBoundedGenerator<DefaultSecurePRNG> for u64

Source§

fn generate<TBounds: RangeBounds<Self>>( generator: &mut DefaultSecurePRNG, range: TBounds, ) -> Self

Source§

impl PRNConcreteBoundedGenerator<SplitMix64> for f32

Source§

fn generate<TBounds: RangeBounds<Self>>( generator: &mut SplitMix64, range: TBounds, ) -> Self

Source§

impl PRNConcreteBoundedGenerator<SplitMix64> for f64

Source§

fn generate<TBounds: RangeBounds<Self>>( generator: &mut SplitMix64, range: TBounds, ) -> Self

Source§

impl PRNConcreteBoundedGenerator<SplitMix64> for i32

Source§

fn generate<TBounds: RangeBounds<Self>>( generator: &mut SplitMix64, range: TBounds, ) -> Self

Source§

impl PRNConcreteBoundedGenerator<SplitMix64> for i64

Source§

fn generate<TBounds: RangeBounds<Self>>( generator: &mut SplitMix64, range: TBounds, ) -> Self

Source§

impl PRNConcreteBoundedGenerator<SplitMix64> for u32

Source§

fn generate<TBounds: RangeBounds<Self>>( generator: &mut SplitMix64, range: TBounds, ) -> Self

Source§

impl PRNConcreteBoundedGenerator<SplitMix64> for u64

Source§

fn generate<TBounds: RangeBounds<Self>>( generator: &mut SplitMix64, range: TBounds, ) -> Self

Source§

impl<T: BlockStream> PRNConcreteBoundedGenerator<BlockPRNG<T>> for f32

Source§

fn generate<TBounds: RangeBounds<Self>>( generator: &mut BlockPRNG<T>, range: TBounds, ) -> Self

Source§

impl<T: BlockStream> PRNConcreteBoundedGenerator<BlockPRNG<T>> for f64

Source§

fn generate<TBounds: RangeBounds<Self>>( generator: &mut BlockPRNG<T>, range: TBounds, ) -> Self

Source§

impl<T: BlockStream> PRNConcreteBoundedGenerator<BlockPRNG<T>> for i32

Source§

fn generate<TBounds: RangeBounds<Self>>( generator: &mut BlockPRNG<T>, range: TBounds, ) -> Self

Source§

impl<T: BlockStream> PRNConcreteBoundedGenerator<BlockPRNG<T>> for i64

Source§

fn generate<TBounds: RangeBounds<Self>>( generator: &mut BlockPRNG<T>, range: TBounds, ) -> Self

Source§

impl<T: BlockStream> PRNConcreteBoundedGenerator<BlockPRNG<T>> for u32

Source§

fn generate<TBounds: RangeBounds<Self>>( generator: &mut BlockPRNG<T>, range: TBounds, ) -> Self

Source§

impl<T: BlockStream> PRNConcreteBoundedGenerator<BlockPRNG<T>> for u64

Source§

fn generate<TBounds: RangeBounds<Self>>( generator: &mut BlockPRNG<T>, range: TBounds, ) -> Self

Source§

impl<const A: u128, const C: u128> PRNConcreteBoundedGenerator<GeneralLinearCongruentialGenerator128<A, C>> for f32

Source§

fn generate<TBounds: RangeBounds<Self>>( generator: &mut GeneralLinearCongruentialGenerator128<A, C>, range: TBounds, ) -> Self

Source§

impl<const A: u128, const C: u128> PRNConcreteBoundedGenerator<GeneralLinearCongruentialGenerator128<A, C>> for f64

Source§

fn generate<TBounds: RangeBounds<Self>>( generator: &mut GeneralLinearCongruentialGenerator128<A, C>, range: TBounds, ) -> Self

Source§

impl<const A: u128, const C: u128> PRNConcreteBoundedGenerator<GeneralLinearCongruentialGenerator128<A, C>> for i32

Source§

fn generate<TBounds: RangeBounds<Self>>( generator: &mut GeneralLinearCongruentialGenerator128<A, C>, range: TBounds, ) -> Self

Source§

impl<const A: u128, const C: u128> PRNConcreteBoundedGenerator<GeneralLinearCongruentialGenerator128<A, C>> for i64

Source§

fn generate<TBounds: RangeBounds<Self>>( generator: &mut GeneralLinearCongruentialGenerator128<A, C>, range: TBounds, ) -> Self

Source§

impl<const A: u128, const C: u128> PRNConcreteBoundedGenerator<GeneralLinearCongruentialGenerator128<A, C>> for u32

Source§

fn generate<TBounds: RangeBounds<Self>>( generator: &mut GeneralLinearCongruentialGenerator128<A, C>, range: TBounds, ) -> Self

Source§

impl<const A: u128, const C: u128> PRNConcreteBoundedGenerator<GeneralLinearCongruentialGenerator128<A, C>> for u64

Source§

fn generate<TBounds: RangeBounds<Self>>( generator: &mut GeneralLinearCongruentialGenerator128<A, C>, range: TBounds, ) -> Self

Implementors§