Trait rand::distributions::range::SampleRange
[−]
[src]
pub trait SampleRange { fn construct_range(low: Self, high: Self) -> Range<Self>; fn sample_range<R>(r: &Range<Self>, rng: &mut R) -> Self
where
R: Rng; }
The helper trait for types that have a sensible way to sample
uniformly between two values. This should not be used directly,
and is only to facilitate Range
.
Required Methods
fn construct_range(low: Self, high: Self) -> Range<Self>
Construct the Range
object that sample_range
requires. This should not ever be called directly, only via
Range::new
, which will check that low < high
, so this
function doesn't have to repeat the check.
fn sample_range<R>(r: &Range<Self>, rng: &mut R) -> Self where
R: Rng,
R: Rng,
Sample a value from the given Range
with the given Rng
as
a source of randomness.