Trait rand::Rand [−][src]
A type that can be randomly generated using an Rng.
Built-in Implementations
This crate implements Rand for various primitive types. Assuming the
provided Rng is well-behaved, these implementations generate values with
the following ranges and distributions:
- Integers (
i32,u32,isize,usize, etc.): Uniformly distributed over all values of the type. char: Uniformly distributed over all Unicode scalar values, i.e. all code points in the range0...0x10_FFFF, except for the range0xD800...0xDFFF(the surrogate code points). This includes unassigned/reserved code points.bool: Generatesfalseortrue, each with probability 0.5.- Floating point types (
f32andf64): Uniformly distributed in the half-open range[0, 1). (TheOpen01,Closed01,Exp1, andStandardNormalwrapper types produce floating point numbers with alternative ranges or distributions.)
The following aggregate types also implement Rand as long as their
component types implement it:
- Tuples and arrays: Each element of the tuple or array is generated
independently, using its own
Randimplementation. Option<T>: ReturnsNonewith probability 0.5; otherwise generates a randomTand returnsSome(T).
Required Methods
fn rand<R: Rng>(rng: &mut R) -> Self
Generates a random instance of this type using the specified source of randomness.
Implementations on Foreign Types
impl Rand for f64[src]
impl Rand for f64impl Rand for f32[src]
impl Rand for f32impl Rand for isize[src]
impl Rand for isizeimpl Rand for i8[src]
impl Rand for i8impl Rand for i16[src]
impl Rand for i16impl Rand for i32[src]
impl Rand for i32impl Rand for i64[src]
impl Rand for i64impl Rand for usize[src]
impl Rand for usizeimpl Rand for u8[src]
impl Rand for u8impl Rand for u16[src]
impl Rand for u16impl Rand for u32[src]
impl Rand for u32impl Rand for u64[src]
impl Rand for u64impl Rand for char[src]
impl Rand for charimpl Rand for bool[src]
impl Rand for boolimpl Rand for ()[src]
impl Rand for ()impl<A: Rand> Rand for (A,)[src]
impl<A: Rand> Rand for (A,)impl<A: Rand, B: Rand> Rand for (A, B)[src]
impl<A: Rand, B: Rand> Rand for (A, B)impl<A: Rand, B: Rand, C: Rand> Rand for (A, B, C)[src]
impl<A: Rand, B: Rand, C: Rand> Rand for (A, B, C)impl<A: Rand, B: Rand, C: Rand, D: Rand> Rand for (A, B, C, D)[src]
impl<A: Rand, B: Rand, C: Rand, D: Rand> Rand for (A, B, C, D)impl<A: Rand, B: Rand, C: Rand, D: Rand, E: Rand> Rand for (A, B, C, D, E)[src]
impl<A: Rand, B: Rand, C: Rand, D: Rand, E: Rand> Rand for (A, B, C, D, E)impl<A: Rand, B: Rand, C: Rand, D: Rand, E: Rand, F: Rand> Rand for (A, B, C, D, E, F)[src]
impl<A: Rand, B: Rand, C: Rand, D: Rand, E: Rand, F: Rand> Rand for (A, B, C, D, E, F)impl<A: Rand, B: Rand, C: Rand, D: Rand, E: Rand, F: Rand, G: Rand> Rand for (A, B, C, D, E, F, G)[src]
impl<A: Rand, B: Rand, C: Rand, D: Rand, E: Rand, F: Rand, G: Rand> Rand for (A, B, C, D, E, F, G)impl<A: Rand, B: Rand, C: Rand, D: Rand, E: Rand, F: Rand, G: Rand, H: Rand> Rand for (A, B, C, D, E, F, G, H)[src]
impl<A: Rand, B: Rand, C: Rand, D: Rand, E: Rand, F: Rand, G: Rand, H: Rand> Rand for (A, B, C, D, E, F, G, H)impl<A: Rand, B: Rand, C: Rand, D: Rand, E: Rand, F: Rand, G: Rand, H: Rand, I: Rand> Rand for (A, B, C, D, E, F, G, H, I)[src]
impl<A: Rand, B: Rand, C: Rand, D: Rand, E: Rand, F: Rand, G: Rand, H: Rand, I: Rand> Rand for (A, B, C, D, E, F, G, H, I)impl<A: Rand, B: Rand, C: Rand, D: Rand, E: Rand, F: Rand, G: Rand, H: Rand, I: Rand, J: Rand> Rand for (A, B, C, D, E, F, G, H, I, J)[src]
impl<A: Rand, B: Rand, C: Rand, D: Rand, E: Rand, F: Rand, G: Rand, H: Rand, I: Rand, J: Rand> Rand for (A, B, C, D, E, F, G, H, I, J)impl<A: Rand, B: Rand, C: Rand, D: Rand, E: Rand, F: Rand, G: Rand, H: Rand, I: Rand, J: Rand, K: Rand> Rand for (A, B, C, D, E, F, G, H, I, J, K)[src]
impl<A: Rand, B: Rand, C: Rand, D: Rand, E: Rand, F: Rand, G: Rand, H: Rand, I: Rand, J: Rand, K: Rand> Rand for (A, B, C, D, E, F, G, H, I, J, K)impl<A: Rand, B: Rand, C: Rand, D: Rand, E: Rand, F: Rand, G: Rand, H: Rand, I: Rand, J: Rand, K: Rand, L: Rand> Rand for (A, B, C, D, E, F, G, H, I, J, K, L)[src]
impl<A: Rand, B: Rand, C: Rand, D: Rand, E: Rand, F: Rand, G: Rand, H: Rand, I: Rand, J: Rand, K: Rand, L: Rand> Rand for (A, B, C, D, E, F, G, H, I, J, K, L)impl<T> Rand for [T; 0][src]
impl<T> Rand for [T; 0]impl<T> Rand for [T; 1] where
T: Rand, [src]
impl<T> Rand for [T; 1] where
T: Rand, impl<T> Rand for [T; 2] where
T: Rand, [src]
impl<T> Rand for [T; 2] where
T: Rand, impl<T> Rand for [T; 3] where
T: Rand, [src]
impl<T> Rand for [T; 3] where
T: Rand, impl<T> Rand for [T; 4] where
T: Rand, [src]
impl<T> Rand for [T; 4] where
T: Rand, impl<T> Rand for [T; 5] where
T: Rand, [src]
impl<T> Rand for [T; 5] where
T: Rand, impl<T> Rand for [T; 6] where
T: Rand, [src]
impl<T> Rand for [T; 6] where
T: Rand, impl<T> Rand for [T; 7] where
T: Rand, [src]
impl<T> Rand for [T; 7] where
T: Rand, impl<T> Rand for [T; 8] where
T: Rand, [src]
impl<T> Rand for [T; 8] where
T: Rand, impl<T> Rand for [T; 9] where
T: Rand, [src]
impl<T> Rand for [T; 9] where
T: Rand, impl<T> Rand for [T; 10] where
T: Rand, [src]
impl<T> Rand for [T; 10] where
T: Rand, impl<T> Rand for [T; 11] where
T: Rand, [src]
impl<T> Rand for [T; 11] where
T: Rand, impl<T> Rand for [T; 12] where
T: Rand, [src]
impl<T> Rand for [T; 12] where
T: Rand, impl<T> Rand for [T; 13] where
T: Rand, [src]
impl<T> Rand for [T; 13] where
T: Rand, impl<T> Rand for [T; 14] where
T: Rand, [src]
impl<T> Rand for [T; 14] where
T: Rand, impl<T> Rand for [T; 15] where
T: Rand, [src]
impl<T> Rand for [T; 15] where
T: Rand, impl<T> Rand for [T; 16] where
T: Rand, [src]
impl<T> Rand for [T; 16] where
T: Rand, impl<T> Rand for [T; 17] where
T: Rand, [src]
impl<T> Rand for [T; 17] where
T: Rand, impl<T> Rand for [T; 18] where
T: Rand, [src]
impl<T> Rand for [T; 18] where
T: Rand, impl<T> Rand for [T; 19] where
T: Rand, [src]
impl<T> Rand for [T; 19] where
T: Rand, impl<T> Rand for [T; 20] where
T: Rand, [src]
impl<T> Rand for [T; 20] where
T: Rand, impl<T> Rand for [T; 21] where
T: Rand, [src]
impl<T> Rand for [T; 21] where
T: Rand, impl<T> Rand for [T; 22] where
T: Rand, [src]
impl<T> Rand for [T; 22] where
T: Rand, impl<T> Rand for [T; 23] where
T: Rand, [src]
impl<T> Rand for [T; 23] where
T: Rand, impl<T> Rand for [T; 24] where
T: Rand, [src]
impl<T> Rand for [T; 24] where
T: Rand, impl<T> Rand for [T; 25] where
T: Rand, [src]
impl<T> Rand for [T; 25] where
T: Rand, impl<T> Rand for [T; 26] where
T: Rand, [src]
impl<T> Rand for [T; 26] where
T: Rand, impl<T> Rand for [T; 27] where
T: Rand, [src]
impl<T> Rand for [T; 27] where
T: Rand, impl<T> Rand for [T; 28] where
T: Rand, [src]
impl<T> Rand for [T; 28] where
T: Rand, impl<T> Rand for [T; 29] where
T: Rand, [src]
impl<T> Rand for [T; 29] where
T: Rand, impl<T> Rand for [T; 30] where
T: Rand, [src]
impl<T> Rand for [T; 30] where
T: Rand, impl<T> Rand for [T; 31] where
T: Rand, [src]
impl<T> Rand for [T; 31] where
T: Rand, impl<T> Rand for [T; 32] where
T: Rand, [src]
impl<T> Rand for [T; 32] where
T: Rand, impl<T: Rand> Rand for Option<T>[src]
impl<T: Rand> Rand for Option<T>Implementors
impl Rand for StandardNormalimpl Rand for Exp1impl Rand for Open01<f64>impl Rand for Closed01<f64>impl Rand for Open01<f32>impl Rand for Closed01<f32>impl Rand for ChaChaRngimpl Rand for IsaacRngimpl Rand for Isaac64Rngimpl Rand for XorShiftRng