[][src]Struct histogram_sampler::Sampler

pub struct Sampler { /* fields omitted */ }

Used to sample values according to a histogram distribution.

See crate-level docs for details.

Use like:

let original_data = vec![
    (bin, count),
];
let sampler = Sampler::from_bins(original_data, 10 /* bin width */);

let mut rng = rand::thread_rng();
use rand::distributions::Distribution;
println!("{}", sampler.sample(&mut rng));

Methods

impl Sampler[src]

pub fn nvalues(&self) -> usize[src]

Report the number of distinct values that can be produced.

Produced samples are guaranteed to be in the range 0..self.nvalues().

pub fn from_bins<I>(iter: I, bin_width: usize) -> Self where
    I: IntoIterator<Item = (usize, usize)>, 
[src]

Create a new Sampler from the given input histogram where the bin width is bin_width.

Trait Implementations

impl Clone for Sampler[src]

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl Debug for Sampler[src]

impl Distribution<usize> for Sampler[src]

fn sample_iter<R>(self, rng: R) -> DistIter<Self, R, T> where
    R: Rng
[src]

Create an iterator that generates random values of T, using rng as the source of randomness. Read more

Auto Trait Implementations

impl Sync for Sampler

impl Send for Sampler

impl Unpin for Sampler

impl RefUnwindSafe for Sampler

impl UnwindSafe for Sampler

Blanket Implementations

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,