Trait SampleRange
pub trait SampleRange<T>
Range that supports generating a single sample efficiently.
See RngExt::random_range for examples; the method provides a convenient
interface over this type.
Examples
use SampleRange;
let mut rng = rng;
// Range and InclusiveRange are supported for many types:
assert_eq!;
assert_eq!;
// RangeTo and RangeToInclusive are supported for unsigned integers:
assert_eq!;
assert!;
Required Methods
fn sample_single<R: Rng + ?Sized>(self, rng: &mut R) -> Result<T, Error>Generate a sample from the given range.
fn is_empty(&self) -> boolCheck whether the range is empty.
Implementors
impl SampleRange<u128> for RangeTo<u128>impl SampleRange<u128> for RangeToInclusive<u128>impl SampleRange<u16> for RangeTo<u16>impl SampleRange<u16> for RangeToInclusive<u16>impl SampleRange<u32> for RangeTo<u32>impl SampleRange<u32> for RangeToInclusive<u32>impl SampleRange<u64> for RangeTo<u64>impl SampleRange<u64> for RangeToInclusive<u64>impl SampleRange<u8> for RangeTo<u8>impl SampleRange<u8> for RangeToInclusive<u8>impl SampleRange<usize> for RangeTo<usize>impl SampleRange<usize> for RangeToInclusive<usize>impl<T: SampleUniform + PartialOrd> SampleRange<T> for Range<T>impl<T: SampleUniform + PartialOrd> SampleRange<T> for RangeInclusive<T>