Trait rand::distributions::weighted::alias_method::Weight
source · [−]pub trait Weight: Sized + Copy + SampleUniform + PartialOrd + Add<Output = Self> + AddAssign + Sub<Output = Self> + SubAssign + Mul<Output = Self> + MulAssign + Div<Output = Self> + DivAssign + Sum {
const MAX: Self;
const ZERO: Self;
fn try_from_u32_lossy(n: u32) -> Option<Self>;
fn sum(values: &[Self]) -> Self { ... }
}
Expand description
Trait that must be implemented for weights, that are used with
WeightedIndex
. Currently no guarantees on the correctness of
WeightedIndex
are given for custom implementations of this trait.
Associated Constants
Required methods
fn try_from_u32_lossy(n: u32) -> Option<Self>
fn try_from_u32_lossy(n: u32) -> Option<Self>
Produce an instance of Self
from a u32
value, or return None
if
out of range. Loss of precision (where Self
is a floating point type)
is acceptable.