Struct utote::multiset::Multiset[][src]

pub struct Multiset<N, U: MultisetStorage<N>> { /* fields omitted */ }

Multiset! yay

Implementations

impl<N: Copy, U, B> Multiset<N, UInt<U, B>> where
    UInt<U, B>: ArrayLength<N>, 
[src]

pub fn map<N2, F>(&self, mut f: F) -> Multiset<N2, UInt<U, B>> where
    N2: Copy,
    F: FnMut(N) -> N2,
    UInt<U, B>: ArrayLength<N2>, 
[src]

pub fn fold<Acc, F>(&self, init: Acc, mut f: F) -> Acc where
    F: FnMut(Acc, N) -> Acc, 
[src]

pub fn zip_map<N2, N3, F>(
    &self,
    other: &Multiset<N2, UInt<U, B>>,
    mut f: F
) -> Multiset<N3, UInt<U, B>> where
    N2: Copy,
    N3: Copy,
    F: FnMut(N, N2) -> N3,
    UInt<U, B>: ArrayLength<N2> + ArrayLength<N3>, 
[src]

impl<U, B> Multiset<u8, U> where
    UInt<U, B>: ArrayLength<u8>, 
[src]

pub fn empty() -> Self[src]

Returns a Multiset of the given array size with all elements set to zero.

pub fn repeat(elem: u8) -> Self[src]

Returns a Multiset of the given array size with all elements set to elem.

pub fn from_slice(slice: &[u8]) -> Self[src]

Returns a Multiset from a slice of the given array size.

pub const fn len() -> usize[src]

The number of elements in the multiset.

pub fn clear(&mut self)[src]

Sets all element counts in the multiset to zero.

pub fn contains(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset.

pub unsafe fn contains_unchecked(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset without bounds checks.

Safety

Does not do bounds check on whether this element is an index in the underlying array.

pub fn intersection(&self, other: &Self) -> Self[src]

Returns a multiset which is the intersection of self and other.

The Intersection of two multisets A & B is defined as the multiset C where C[0] == min(A[0], B[0]).

pub fn union(&self, other: &Self) -> Self[src]

Returns a multiset which is the union of self and other.

The union of two multisets A & B is defined as the multiset C where C[0] == max(A[0], B[0]).

pub fn count_zero(&self) -> u8[src]

Return the number of elements whose member count is zero.

pub fn count_non_zero(&self) -> u8[src]

Return the number of elements whose member count is non-zero.

pub fn is_empty(&self) -> bool[src]

Check whether all elements have zero members.

pub fn is_singleton(&self) -> bool[src]

Check whether only one element has one or more members.

pub fn is_subset(&self, other: &Self) -> bool[src]

Check whether self is a subset of other.

Multisets A is a subset of B if A[i] <= B[i] for all i in A.

pub fn is_superset(&self, other: &Self) -> bool[src]

Check whether self is a superset of other.

Multisets A is a superset of B if A[i] >= B[i] for all i in A.

pub fn is_proper_subset(&self, other: &Self) -> bool[src]

Check whether self is a proper subset of other.

Multisets A is a proper subset of B if A[i] <= B[i] for all i in A and there exists j such that A[j] < B[j].

pub fn is_proper_superset(&self, other: &Self) -> bool[src]

Check whether self is a proper superset of other.

Multisets A is a proper superset of B if A[i] >= B[i] for all i in A and there exists j such that A[j] > B[j].

pub fn is_any_lesser(&self, other: &Self) -> bool[src]

Check whether any element of self is less than an element of other.

True if the exists some i such that A[i] < B[i].

pub fn is_any_greater(&self, other: &Self) -> bool[src]

Check whether any element of self is greater than an element of other.

True if the exists some i such that A[i] > B[i].

pub fn total(&self) -> u8[src]

The total or cardinality of a multiset is the sum of all its elements member counts.

Notes:

  • This may overflow.

pub fn argmax(&self) -> (usize, u8)[src]

Returns a tuple containing the (element, corresponding largest member count) in the multiset.

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

Returns the element corresponding to the largest member count in the multiset.

pub fn max(&self) -> u8[src]

Returns the largest member count in the multiset.

pub fn argmin(&self) -> (usize, u8)[src]

Returns a tuple containing the (element, corresponding smallest member count) in the multiset.

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

Returns the element corresponding to the smallest member count in the multiset.

pub fn min(&self) -> u8[src]

Returns the smallest member count in the multiset.

pub fn choose(&mut self, elem: usize)[src]

Set all elements member counts, except for the given elem, to zero.

pub fn choose_random(&mut self, rng: &mut StdRng)[src]

Set all elements member counts, except for a random one, to zero.

pub fn collision_entropy(&self) -> f64[src]

Calculate the collision entropy of the multiset.

pub fn shannon_entropy(&self) -> f64[src]

Calculate the shannon entropy of the multiset. Uses ln rather than log2.

impl<U, B> Multiset<u16, U> where
    UInt<U, B>: ArrayLength<u16>, 
[src]

pub fn empty() -> Self[src]

Returns a Multiset of the given array size with all elements set to zero.

pub fn repeat(elem: u16) -> Self[src]

Returns a Multiset of the given array size with all elements set to elem.

pub fn from_slice(slice: &[u16]) -> Self[src]

Returns a Multiset from a slice of the given array size.

pub const fn len() -> usize[src]

The number of elements in the multiset.

pub fn clear(&mut self)[src]

Sets all element counts in the multiset to zero.

pub fn contains(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset.

pub unsafe fn contains_unchecked(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset without bounds checks.

Safety

Does not do bounds check on whether this element is an index in the underlying array.

pub fn intersection(&self, other: &Self) -> Self[src]

Returns a multiset which is the intersection of self and other.

The Intersection of two multisets A & B is defined as the multiset C where C[0] == min(A[0], B[0]).

pub fn union(&self, other: &Self) -> Self[src]

Returns a multiset which is the union of self and other.

The union of two multisets A & B is defined as the multiset C where C[0] == max(A[0], B[0]).

pub fn count_zero(&self) -> u16[src]

Return the number of elements whose member count is zero.

pub fn count_non_zero(&self) -> u16[src]

Return the number of elements whose member count is non-zero.

pub fn is_empty(&self) -> bool[src]

Check whether all elements have zero members.

pub fn is_singleton(&self) -> bool[src]

Check whether only one element has one or more members.

pub fn is_subset(&self, other: &Self) -> bool[src]

Check whether self is a subset of other.

Multisets A is a subset of B if A[i] <= B[i] for all i in A.

pub fn is_superset(&self, other: &Self) -> bool[src]

Check whether self is a superset of other.

Multisets A is a superset of B if A[i] >= B[i] for all i in A.

pub fn is_proper_subset(&self, other: &Self) -> bool[src]

Check whether self is a proper subset of other.

Multisets A is a proper subset of B if A[i] <= B[i] for all i in A and there exists j such that A[j] < B[j].

pub fn is_proper_superset(&self, other: &Self) -> bool[src]

Check whether self is a proper superset of other.

Multisets A is a proper superset of B if A[i] >= B[i] for all i in A and there exists j such that A[j] > B[j].

pub fn is_any_lesser(&self, other: &Self) -> bool[src]

Check whether any element of self is less than an element of other.

True if the exists some i such that A[i] < B[i].

pub fn is_any_greater(&self, other: &Self) -> bool[src]

Check whether any element of self is greater than an element of other.

True if the exists some i such that A[i] > B[i].

pub fn total(&self) -> u16[src]

The total or cardinality of a multiset is the sum of all its elements member counts.

Notes:

  • This may overflow.

pub fn argmax(&self) -> (usize, u16)[src]

Returns a tuple containing the (element, corresponding largest member count) in the multiset.

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

Returns the element corresponding to the largest member count in the multiset.

pub fn max(&self) -> u16[src]

Returns the largest member count in the multiset.

pub fn argmin(&self) -> (usize, u16)[src]

Returns a tuple containing the (element, corresponding smallest member count) in the multiset.

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

Returns the element corresponding to the smallest member count in the multiset.

pub fn min(&self) -> u16[src]

Returns the smallest member count in the multiset.

pub fn choose(&mut self, elem: usize)[src]

Set all elements member counts, except for the given elem, to zero.

pub fn choose_random(&mut self, rng: &mut StdRng)[src]

Set all elements member counts, except for a random one, to zero.

pub fn collision_entropy(&self) -> f64[src]

Calculate the collision entropy of the multiset.

pub fn shannon_entropy(&self) -> f64[src]

Calculate the shannon entropy of the multiset. Uses ln rather than log2.

impl<U, B> Multiset<u32, U> where
    UInt<U, B>: ArrayLength<u32>, 
[src]

pub fn empty() -> Self[src]

Returns a Multiset of the given array size with all elements set to zero.

pub fn repeat(elem: u32) -> Self[src]

Returns a Multiset of the given array size with all elements set to elem.

pub fn from_slice(slice: &[u32]) -> Self[src]

Returns a Multiset from a slice of the given array size.

pub const fn len() -> usize[src]

The number of elements in the multiset.

pub fn clear(&mut self)[src]

Sets all element counts in the multiset to zero.

pub fn contains(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset.

pub unsafe fn contains_unchecked(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset without bounds checks.

Safety

Does not do bounds check on whether this element is an index in the underlying array.

pub fn intersection(&self, other: &Self) -> Self[src]

Returns a multiset which is the intersection of self and other.

The Intersection of two multisets A & B is defined as the multiset C where C[0] == min(A[0], B[0]).

pub fn union(&self, other: &Self) -> Self[src]

Returns a multiset which is the union of self and other.

The union of two multisets A & B is defined as the multiset C where C[0] == max(A[0], B[0]).

pub fn count_zero(&self) -> u32[src]

Return the number of elements whose member count is zero.

pub fn count_non_zero(&self) -> u32[src]

Return the number of elements whose member count is non-zero.

pub fn is_empty(&self) -> bool[src]

Check whether all elements have zero members.

pub fn is_singleton(&self) -> bool[src]

Check whether only one element has one or more members.

pub fn is_subset(&self, other: &Self) -> bool[src]

Check whether self is a subset of other.

Multisets A is a subset of B if A[i] <= B[i] for all i in A.

pub fn is_superset(&self, other: &Self) -> bool[src]

Check whether self is a superset of other.

Multisets A is a superset of B if A[i] >= B[i] for all i in A.

pub fn is_proper_subset(&self, other: &Self) -> bool[src]

Check whether self is a proper subset of other.

Multisets A is a proper subset of B if A[i] <= B[i] for all i in A and there exists j such that A[j] < B[j].

pub fn is_proper_superset(&self, other: &Self) -> bool[src]

Check whether self is a proper superset of other.

Multisets A is a proper superset of B if A[i] >= B[i] for all i in A and there exists j such that A[j] > B[j].

pub fn is_any_lesser(&self, other: &Self) -> bool[src]

Check whether any element of self is less than an element of other.

True if the exists some i such that A[i] < B[i].

pub fn is_any_greater(&self, other: &Self) -> bool[src]

Check whether any element of self is greater than an element of other.

True if the exists some i such that A[i] > B[i].

pub fn total(&self) -> u32[src]

The total or cardinality of a multiset is the sum of all its elements member counts.

Notes:

  • This may overflow.

pub fn argmax(&self) -> (usize, u32)[src]

Returns a tuple containing the (element, corresponding largest member count) in the multiset.

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

Returns the element corresponding to the largest member count in the multiset.

pub fn max(&self) -> u32[src]

Returns the largest member count in the multiset.

pub fn argmin(&self) -> (usize, u32)[src]

Returns a tuple containing the (element, corresponding smallest member count) in the multiset.

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

Returns the element corresponding to the smallest member count in the multiset.

pub fn min(&self) -> u32[src]

Returns the smallest member count in the multiset.

pub fn choose(&mut self, elem: usize)[src]

Set all elements member counts, except for the given elem, to zero.

pub fn choose_random(&mut self, rng: &mut StdRng)[src]

Set all elements member counts, except for a random one, to zero.

pub fn collision_entropy(&self) -> f64[src]

Calculate the collision entropy of the multiset.

pub fn shannon_entropy(&self) -> f64[src]

Calculate the shannon entropy of the multiset. Uses ln rather than log2.

impl<U, B> Multiset<Simd<[u8; 2]>, U> where
    UInt<U, B>: ArrayLength<u8x2>, 
[src]

pub fn empty() -> Self[src]

Returns a Multiset of the given array * SIMD vector size with all elements set to zero.

pub fn repeat(elem: u8) -> Self[src]

Returns a Multiset of the given array * SIMD vector size with all elements set to elem.

pub fn from_slice(slice: &[u8]) -> Self[src]

Returns a Multiset from a slice of the given array * SIMD vector size.

pub const fn len() -> usize[src]

The number of elements in the multiset.

pub fn clear(&mut self)[src]

Sets all element counts in the multiset to zero.

pub fn contains(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset.

pub unsafe fn contains_unchecked(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset without bounds checks.

Safety

Does not do bounds check on whether this element is an index in the underlying array.

pub fn intersection(&self, other: &Self) -> Self[src]

Returns a multiset which is the intersection of self and other.

The Intersection of two multisets A & B is defined as the multiset C where C[0] == min(A[0], B[0]).

pub fn union(&self, other: &Self) -> Self[src]

Returns a multiset which is the union of self and other.

The union of two multisets A & B is defined as the multiset C where C[0] == max(A[0], B[0]).

pub fn count_zero(&self) -> u32[src]

Return the number of elements whose member count is zero.

pub fn count_non_zero(&self) -> u32[src]

Return the number of elements whose member count is non-zero.

pub fn is_empty(&self) -> bool[src]

Check whether all elements have zero members.

pub fn is_singleton(&self) -> bool[src]

Check whether only one element has one or more members.

pub fn is_subset(&self, other: &Self) -> bool[src]

Check whether self is a subset of other.

Multisets A is a subset of B if A[i] <= B[i] for all i in A.

pub fn is_superset(&self, other: &Self) -> bool[src]

Check whether self is a superset of other.

Multisets A is a superset of B if A[i] >= B[i] for all i in A.

pub fn is_proper_subset(&self, other: &Self) -> bool[src]

Check whether self is a proper subset of other.

Multisets A is a proper subset of B if A[i] <= B[i] for all i in A and there exists j such that A[j] < B[j].

pub fn is_proper_superset(&self, other: &Self) -> bool[src]

Check whether self is a proper superset of other.

Multisets A is a proper superset of B if A[i] >= B[i] for all i in A and there exists j such that A[j] > B[j].

pub fn is_any_lesser(&self, other: &Self) -> bool[src]

Check whether any element of self is less than an element of other.

True if the exists some i such that A[i] < B[i].

pub fn is_any_greater(&self, other: &Self) -> bool[src]

Check whether any element of self is greater than an element of other.

True if the exists some i such that A[i] > B[i].

pub fn total(&self) -> u8[src]

The total or cardinality of a multiset is the sum of all its elements member counts.

Notes:

  • This may overflow.
  • The implementation uses a horizontal operation on SIMD vectors.

pub fn argmax(&self) -> (usize, u8)[src]

Returns a tuple containing the (element, corresponding largest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

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

Returns the element corresponding to the largest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

pub fn max(&self) -> u8[src]

Returns the largest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vectors.

pub fn argmin(&self) -> (usize, u8)[src]

Returns a tuple containing the (element, corresponding smallest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

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

Returns the element corresponding to the smallest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

pub fn min(&self) -> u8[src]

Returns the smallest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vectors.

pub fn choose(&mut self, elem: usize)[src]

Set all elements member counts, except for the given elem, to zero.

pub fn choose_random(&mut self, rng: &mut StdRng)[src]

Set all elements member counts, except for a random one, to zero.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

pub fn collision_entropy(&self) -> f64[src]

Calculate the collision entropy of the multiset.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

pub fn shannon_entropy(&self) -> f64[src]

Calculate the shannon entropy of the multiset. Uses ln rather than log2.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

impl<U, B> Multiset<Simd<[u8; 4]>, U> where
    UInt<U, B>: ArrayLength<u8x4>, 
[src]

pub fn empty() -> Self[src]

Returns a Multiset of the given array * SIMD vector size with all elements set to zero.

pub fn repeat(elem: u8) -> Self[src]

Returns a Multiset of the given array * SIMD vector size with all elements set to elem.

pub fn from_slice(slice: &[u8]) -> Self[src]

Returns a Multiset from a slice of the given array * SIMD vector size.

pub const fn len() -> usize[src]

The number of elements in the multiset.

pub fn clear(&mut self)[src]

Sets all element counts in the multiset to zero.

pub fn contains(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset.

pub unsafe fn contains_unchecked(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset without bounds checks.

Safety

Does not do bounds check on whether this element is an index in the underlying array.

pub fn intersection(&self, other: &Self) -> Self[src]

Returns a multiset which is the intersection of self and other.

The Intersection of two multisets A & B is defined as the multiset C where C[0] == min(A[0], B[0]).

pub fn union(&self, other: &Self) -> Self[src]

Returns a multiset which is the union of self and other.

The union of two multisets A & B is defined as the multiset C where C[0] == max(A[0], B[0]).

pub fn count_zero(&self) -> u32[src]

Return the number of elements whose member count is zero.

pub fn count_non_zero(&self) -> u32[src]

Return the number of elements whose member count is non-zero.

pub fn is_empty(&self) -> bool[src]

Check whether all elements have zero members.

pub fn is_singleton(&self) -> bool[src]

Check whether only one element has one or more members.

pub fn is_subset(&self, other: &Self) -> bool[src]

Check whether self is a subset of other.

Multisets A is a subset of B if A[i] <= B[i] for all i in A.

pub fn is_superset(&self, other: &Self) -> bool[src]

Check whether self is a superset of other.

Multisets A is a superset of B if A[i] >= B[i] for all i in A.

pub fn is_proper_subset(&self, other: &Self) -> bool[src]

Check whether self is a proper subset of other.

Multisets A is a proper subset of B if A[i] <= B[i] for all i in A and there exists j such that A[j] < B[j].

pub fn is_proper_superset(&self, other: &Self) -> bool[src]

Check whether self is a proper superset of other.

Multisets A is a proper superset of B if A[i] >= B[i] for all i in A and there exists j such that A[j] > B[j].

pub fn is_any_lesser(&self, other: &Self) -> bool[src]

Check whether any element of self is less than an element of other.

True if the exists some i such that A[i] < B[i].

pub fn is_any_greater(&self, other: &Self) -> bool[src]

Check whether any element of self is greater than an element of other.

True if the exists some i such that A[i] > B[i].

pub fn total(&self) -> u8[src]

The total or cardinality of a multiset is the sum of all its elements member counts.

Notes:

  • This may overflow.
  • The implementation uses a horizontal operation on SIMD vectors.

pub fn argmax(&self) -> (usize, u8)[src]

Returns a tuple containing the (element, corresponding largest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

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

Returns the element corresponding to the largest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

pub fn max(&self) -> u8[src]

Returns the largest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vectors.

pub fn argmin(&self) -> (usize, u8)[src]

Returns a tuple containing the (element, corresponding smallest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

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

Returns the element corresponding to the smallest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

pub fn min(&self) -> u8[src]

Returns the smallest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vectors.

pub fn choose(&mut self, elem: usize)[src]

Set all elements member counts, except for the given elem, to zero.

pub fn choose_random(&mut self, rng: &mut StdRng)[src]

Set all elements member counts, except for a random one, to zero.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

pub fn collision_entropy(&self) -> f64[src]

Calculate the collision entropy of the multiset.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

pub fn shannon_entropy(&self) -> f64[src]

Calculate the shannon entropy of the multiset. Uses ln rather than log2.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

impl<U, B> Multiset<Simd<[u8; 8]>, U> where
    UInt<U, B>: ArrayLength<u8x8>, 
[src]

pub fn empty() -> Self[src]

Returns a Multiset of the given array * SIMD vector size with all elements set to zero.

pub fn repeat(elem: u8) -> Self[src]

Returns a Multiset of the given array * SIMD vector size with all elements set to elem.

pub fn from_slice(slice: &[u8]) -> Self[src]

Returns a Multiset from a slice of the given array * SIMD vector size.

pub const fn len() -> usize[src]

The number of elements in the multiset.

pub fn clear(&mut self)[src]

Sets all element counts in the multiset to zero.

pub fn contains(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset.

pub unsafe fn contains_unchecked(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset without bounds checks.

Safety

Does not do bounds check on whether this element is an index in the underlying array.

pub fn intersection(&self, other: &Self) -> Self[src]

Returns a multiset which is the intersection of self and other.

The Intersection of two multisets A & B is defined as the multiset C where C[0] == min(A[0], B[0]).

pub fn union(&self, other: &Self) -> Self[src]

Returns a multiset which is the union of self and other.

The union of two multisets A & B is defined as the multiset C where C[0] == max(A[0], B[0]).

pub fn count_zero(&self) -> u32[src]

Return the number of elements whose member count is zero.

pub fn count_non_zero(&self) -> u32[src]

Return the number of elements whose member count is non-zero.

pub fn is_empty(&self) -> bool[src]

Check whether all elements have zero members.

pub fn is_singleton(&self) -> bool[src]

Check whether only one element has one or more members.

pub fn is_subset(&self, other: &Self) -> bool[src]

Check whether self is a subset of other.

Multisets A is a subset of B if A[i] <= B[i] for all i in A.

pub fn is_superset(&self, other: &Self) -> bool[src]

Check whether self is a superset of other.

Multisets A is a superset of B if A[i] >= B[i] for all i in A.

pub fn is_proper_subset(&self, other: &Self) -> bool[src]

Check whether self is a proper subset of other.

Multisets A is a proper subset of B if A[i] <= B[i] for all i in A and there exists j such that A[j] < B[j].

pub fn is_proper_superset(&self, other: &Self) -> bool[src]

Check whether self is a proper superset of other.

Multisets A is a proper superset of B if A[i] >= B[i] for all i in A and there exists j such that A[j] > B[j].

pub fn is_any_lesser(&self, other: &Self) -> bool[src]

Check whether any element of self is less than an element of other.

True if the exists some i such that A[i] < B[i].

pub fn is_any_greater(&self, other: &Self) -> bool[src]

Check whether any element of self is greater than an element of other.

True if the exists some i such that A[i] > B[i].

pub fn total(&self) -> u8[src]

The total or cardinality of a multiset is the sum of all its elements member counts.

Notes:

  • This may overflow.
  • The implementation uses a horizontal operation on SIMD vectors.

pub fn argmax(&self) -> (usize, u8)[src]

Returns a tuple containing the (element, corresponding largest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

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

Returns the element corresponding to the largest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

pub fn max(&self) -> u8[src]

Returns the largest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vectors.

pub fn argmin(&self) -> (usize, u8)[src]

Returns a tuple containing the (element, corresponding smallest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

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

Returns the element corresponding to the smallest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

pub fn min(&self) -> u8[src]

Returns the smallest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vectors.

pub fn choose(&mut self, elem: usize)[src]

Set all elements member counts, except for the given elem, to zero.

pub fn choose_random(&mut self, rng: &mut StdRng)[src]

Set all elements member counts, except for a random one, to zero.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

pub fn collision_entropy(&self) -> f64[src]

Calculate the collision entropy of the multiset.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

pub fn shannon_entropy(&self) -> f64[src]

Calculate the shannon entropy of the multiset. Uses ln rather than log2.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

impl<U, B> Multiset<Simd<[u16; 2]>, U> where
    UInt<U, B>: ArrayLength<u16x2>, 
[src]

pub fn empty() -> Self[src]

Returns a Multiset of the given array * SIMD vector size with all elements set to zero.

pub fn repeat(elem: u16) -> Self[src]

Returns a Multiset of the given array * SIMD vector size with all elements set to elem.

pub fn from_slice(slice: &[u16]) -> Self[src]

Returns a Multiset from a slice of the given array * SIMD vector size.

pub const fn len() -> usize[src]

The number of elements in the multiset.

pub fn clear(&mut self)[src]

Sets all element counts in the multiset to zero.

pub fn contains(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset.

pub unsafe fn contains_unchecked(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset without bounds checks.

Safety

Does not do bounds check on whether this element is an index in the underlying array.

pub fn intersection(&self, other: &Self) -> Self[src]

Returns a multiset which is the intersection of self and other.

The Intersection of two multisets A & B is defined as the multiset C where C[0] == min(A[0], B[0]).

pub fn union(&self, other: &Self) -> Self[src]

Returns a multiset which is the union of self and other.

The union of two multisets A & B is defined as the multiset C where C[0] == max(A[0], B[0]).

pub fn count_zero(&self) -> u32[src]

Return the number of elements whose member count is zero.

pub fn count_non_zero(&self) -> u32[src]

Return the number of elements whose member count is non-zero.

pub fn is_empty(&self) -> bool[src]

Check whether all elements have zero members.

pub fn is_singleton(&self) -> bool[src]

Check whether only one element has one or more members.

pub fn is_subset(&self, other: &Self) -> bool[src]

Check whether self is a subset of other.

Multisets A is a subset of B if A[i] <= B[i] for all i in A.

pub fn is_superset(&self, other: &Self) -> bool[src]

Check whether self is a superset of other.

Multisets A is a superset of B if A[i] >= B[i] for all i in A.

pub fn is_proper_subset(&self, other: &Self) -> bool[src]

Check whether self is a proper subset of other.

Multisets A is a proper subset of B if A[i] <= B[i] for all i in A and there exists j such that A[j] < B[j].

pub fn is_proper_superset(&self, other: &Self) -> bool[src]

Check whether self is a proper superset of other.

Multisets A is a proper superset of B if A[i] >= B[i] for all i in A and there exists j such that A[j] > B[j].

pub fn is_any_lesser(&self, other: &Self) -> bool[src]

Check whether any element of self is less than an element of other.

True if the exists some i such that A[i] < B[i].

pub fn is_any_greater(&self, other: &Self) -> bool[src]

Check whether any element of self is greater than an element of other.

True if the exists some i such that A[i] > B[i].

pub fn total(&self) -> u16[src]

The total or cardinality of a multiset is the sum of all its elements member counts.

Notes:

  • This may overflow.
  • The implementation uses a horizontal operation on SIMD vectors.

pub fn argmax(&self) -> (usize, u16)[src]

Returns a tuple containing the (element, corresponding largest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

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

Returns the element corresponding to the largest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

pub fn max(&self) -> u16[src]

Returns the largest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vectors.

pub fn argmin(&self) -> (usize, u16)[src]

Returns a tuple containing the (element, corresponding smallest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

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

Returns the element corresponding to the smallest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

pub fn min(&self) -> u16[src]

Returns the smallest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vectors.

pub fn choose(&mut self, elem: usize)[src]

Set all elements member counts, except for the given elem, to zero.

pub fn choose_random(&mut self, rng: &mut StdRng)[src]

Set all elements member counts, except for a random one, to zero.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

pub fn collision_entropy(&self) -> f64[src]

Calculate the collision entropy of the multiset.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

pub fn shannon_entropy(&self) -> f64[src]

Calculate the shannon entropy of the multiset. Uses ln rather than log2.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

impl<U, B> Multiset<Simd<[u16; 4]>, U> where
    UInt<U, B>: ArrayLength<u16x4>, 
[src]

pub fn empty() -> Self[src]

Returns a Multiset of the given array * SIMD vector size with all elements set to zero.

pub fn repeat(elem: u16) -> Self[src]

Returns a Multiset of the given array * SIMD vector size with all elements set to elem.

pub fn from_slice(slice: &[u16]) -> Self[src]

Returns a Multiset from a slice of the given array * SIMD vector size.

pub const fn len() -> usize[src]

The number of elements in the multiset.

pub fn clear(&mut self)[src]

Sets all element counts in the multiset to zero.

pub fn contains(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset.

pub unsafe fn contains_unchecked(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset without bounds checks.

Safety

Does not do bounds check on whether this element is an index in the underlying array.

pub fn intersection(&self, other: &Self) -> Self[src]

Returns a multiset which is the intersection of self and other.

The Intersection of two multisets A & B is defined as the multiset C where C[0] == min(A[0], B[0]).

pub fn union(&self, other: &Self) -> Self[src]

Returns a multiset which is the union of self and other.

The union of two multisets A & B is defined as the multiset C where C[0] == max(A[0], B[0]).

pub fn count_zero(&self) -> u32[src]

Return the number of elements whose member count is zero.

pub fn count_non_zero(&self) -> u32[src]

Return the number of elements whose member count is non-zero.

pub fn is_empty(&self) -> bool[src]

Check whether all elements have zero members.

pub fn is_singleton(&self) -> bool[src]

Check whether only one element has one or more members.

pub fn is_subset(&self, other: &Self) -> bool[src]

Check whether self is a subset of other.

Multisets A is a subset of B if A[i] <= B[i] for all i in A.

pub fn is_superset(&self, other: &Self) -> bool[src]

Check whether self is a superset of other.

Multisets A is a superset of B if A[i] >= B[i] for all i in A.

pub fn is_proper_subset(&self, other: &Self) -> bool[src]

Check whether self is a proper subset of other.

Multisets A is a proper subset of B if A[i] <= B[i] for all i in A and there exists j such that A[j] < B[j].

pub fn is_proper_superset(&self, other: &Self) -> bool[src]

Check whether self is a proper superset of other.

Multisets A is a proper superset of B if A[i] >= B[i] for all i in A and there exists j such that A[j] > B[j].

pub fn is_any_lesser(&self, other: &Self) -> bool[src]

Check whether any element of self is less than an element of other.

True if the exists some i such that A[i] < B[i].

pub fn is_any_greater(&self, other: &Self) -> bool[src]

Check whether any element of self is greater than an element of other.

True if the exists some i such that A[i] > B[i].

pub fn total(&self) -> u16[src]

The total or cardinality of a multiset is the sum of all its elements member counts.

Notes:

  • This may overflow.
  • The implementation uses a horizontal operation on SIMD vectors.

pub fn argmax(&self) -> (usize, u16)[src]

Returns a tuple containing the (element, corresponding largest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

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

Returns the element corresponding to the largest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

pub fn max(&self) -> u16[src]

Returns the largest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vectors.

pub fn argmin(&self) -> (usize, u16)[src]

Returns a tuple containing the (element, corresponding smallest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

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

Returns the element corresponding to the smallest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

pub fn min(&self) -> u16[src]

Returns the smallest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vectors.

pub fn choose(&mut self, elem: usize)[src]

Set all elements member counts, except for the given elem, to zero.

pub fn choose_random(&mut self, rng: &mut StdRng)[src]

Set all elements member counts, except for a random one, to zero.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

pub fn collision_entropy(&self) -> f64[src]

Calculate the collision entropy of the multiset.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

pub fn shannon_entropy(&self) -> f64[src]

Calculate the shannon entropy of the multiset. Uses ln rather than log2.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

impl<U, B> Multiset<Simd<[u16; 8]>, U> where
    UInt<U, B>: ArrayLength<u16x8>, 
[src]

pub fn empty() -> Self[src]

Returns a Multiset of the given array * SIMD vector size with all elements set to zero.

pub fn repeat(elem: u16) -> Self[src]

Returns a Multiset of the given array * SIMD vector size with all elements set to elem.

pub fn from_slice(slice: &[u16]) -> Self[src]

Returns a Multiset from a slice of the given array * SIMD vector size.

pub const fn len() -> usize[src]

The number of elements in the multiset.

pub fn clear(&mut self)[src]

Sets all element counts in the multiset to zero.

pub fn contains(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset.

pub unsafe fn contains_unchecked(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset without bounds checks.

Safety

Does not do bounds check on whether this element is an index in the underlying array.

pub fn intersection(&self, other: &Self) -> Self[src]

Returns a multiset which is the intersection of self and other.

The Intersection of two multisets A & B is defined as the multiset C where C[0] == min(A[0], B[0]).

pub fn union(&self, other: &Self) -> Self[src]

Returns a multiset which is the union of self and other.

The union of two multisets A & B is defined as the multiset C where C[0] == max(A[0], B[0]).

pub fn count_zero(&self) -> u32[src]

Return the number of elements whose member count is zero.

pub fn count_non_zero(&self) -> u32[src]

Return the number of elements whose member count is non-zero.

pub fn is_empty(&self) -> bool[src]

Check whether all elements have zero members.

pub fn is_singleton(&self) -> bool[src]

Check whether only one element has one or more members.

pub fn is_subset(&self, other: &Self) -> bool[src]

Check whether self is a subset of other.

Multisets A is a subset of B if A[i] <= B[i] for all i in A.

pub fn is_superset(&self, other: &Self) -> bool[src]

Check whether self is a superset of other.

Multisets A is a superset of B if A[i] >= B[i] for all i in A.

pub fn is_proper_subset(&self, other: &Self) -> bool[src]

Check whether self is a proper subset of other.

Multisets A is a proper subset of B if A[i] <= B[i] for all i in A and there exists j such that A[j] < B[j].

pub fn is_proper_superset(&self, other: &Self) -> bool[src]

Check whether self is a proper superset of other.

Multisets A is a proper superset of B if A[i] >= B[i] for all i in A and there exists j such that A[j] > B[j].

pub fn is_any_lesser(&self, other: &Self) -> bool[src]

Check whether any element of self is less than an element of other.

True if the exists some i such that A[i] < B[i].

pub fn is_any_greater(&self, other: &Self) -> bool[src]

Check whether any element of self is greater than an element of other.

True if the exists some i such that A[i] > B[i].

pub fn total(&self) -> u16[src]

The total or cardinality of a multiset is the sum of all its elements member counts.

Notes:

  • This may overflow.
  • The implementation uses a horizontal operation on SIMD vectors.

pub fn argmax(&self) -> (usize, u16)[src]

Returns a tuple containing the (element, corresponding largest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

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

Returns the element corresponding to the largest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

pub fn max(&self) -> u16[src]

Returns the largest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vectors.

pub fn argmin(&self) -> (usize, u16)[src]

Returns a tuple containing the (element, corresponding smallest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

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

Returns the element corresponding to the smallest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

pub fn min(&self) -> u16[src]

Returns the smallest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vectors.

pub fn choose(&mut self, elem: usize)[src]

Set all elements member counts, except for the given elem, to zero.

pub fn choose_random(&mut self, rng: &mut StdRng)[src]

Set all elements member counts, except for a random one, to zero.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

pub fn collision_entropy(&self) -> f64[src]

Calculate the collision entropy of the multiset.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

pub fn shannon_entropy(&self) -> f64[src]

Calculate the shannon entropy of the multiset. Uses ln rather than log2.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

impl<U, B> Multiset<Simd<[u32; 2]>, U> where
    UInt<U, B>: ArrayLength<u32x2>, 
[src]

pub fn empty() -> Self[src]

Returns a Multiset of the given array * SIMD vector size with all elements set to zero.

pub fn repeat(elem: u32) -> Self[src]

Returns a Multiset of the given array * SIMD vector size with all elements set to elem.

pub fn from_slice(slice: &[u32]) -> Self[src]

Returns a Multiset from a slice of the given array * SIMD vector size.

pub const fn len() -> usize[src]

The number of elements in the multiset.

pub fn clear(&mut self)[src]

Sets all element counts in the multiset to zero.

pub fn contains(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset.

pub unsafe fn contains_unchecked(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset without bounds checks.

Safety

Does not do bounds check on whether this element is an index in the underlying array.

pub fn intersection(&self, other: &Self) -> Self[src]

Returns a multiset which is the intersection of self and other.

The Intersection of two multisets A & B is defined as the multiset C where C[0] == min(A[0], B[0]).

pub fn union(&self, other: &Self) -> Self[src]

Returns a multiset which is the union of self and other.

The union of two multisets A & B is defined as the multiset C where C[0] == max(A[0], B[0]).

pub fn count_zero(&self) -> u32[src]

Return the number of elements whose member count is zero.

pub fn count_non_zero(&self) -> u32[src]

Return the number of elements whose member count is non-zero.

pub fn is_empty(&self) -> bool[src]

Check whether all elements have zero members.

pub fn is_singleton(&self) -> bool[src]

Check whether only one element has one or more members.

pub fn is_subset(&self, other: &Self) -> bool[src]

Check whether self is a subset of other.

Multisets A is a subset of B if A[i] <= B[i] for all i in A.

pub fn is_superset(&self, other: &Self) -> bool[src]

Check whether self is a superset of other.

Multisets A is a superset of B if A[i] >= B[i] for all i in A.

pub fn is_proper_subset(&self, other: &Self) -> bool[src]

Check whether self is a proper subset of other.

Multisets A is a proper subset of B if A[i] <= B[i] for all i in A and there exists j such that A[j] < B[j].

pub fn is_proper_superset(&self, other: &Self) -> bool[src]

Check whether self is a proper superset of other.

Multisets A is a proper superset of B if A[i] >= B[i] for all i in A and there exists j such that A[j] > B[j].

pub fn is_any_lesser(&self, other: &Self) -> bool[src]

Check whether any element of self is less than an element of other.

True if the exists some i such that A[i] < B[i].

pub fn is_any_greater(&self, other: &Self) -> bool[src]

Check whether any element of self is greater than an element of other.

True if the exists some i such that A[i] > B[i].

pub fn total(&self) -> u32[src]

The total or cardinality of a multiset is the sum of all its elements member counts.

Notes:

  • This may overflow.
  • The implementation uses a horizontal operation on SIMD vectors.

pub fn argmax(&self) -> (usize, u32)[src]

Returns a tuple containing the (element, corresponding largest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

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

Returns the element corresponding to the largest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

pub fn max(&self) -> u32[src]

Returns the largest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vectors.

pub fn argmin(&self) -> (usize, u32)[src]

Returns a tuple containing the (element, corresponding smallest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

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

Returns the element corresponding to the smallest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

pub fn min(&self) -> u32[src]

Returns the smallest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vectors.

pub fn choose(&mut self, elem: usize)[src]

Set all elements member counts, except for the given elem, to zero.

pub fn choose_random(&mut self, rng: &mut StdRng)[src]

Set all elements member counts, except for a random one, to zero.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

pub fn collision_entropy(&self) -> f64[src]

Calculate the collision entropy of the multiset.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

pub fn shannon_entropy(&self) -> f64[src]

Calculate the shannon entropy of the multiset. Uses ln rather than log2.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

impl<U, B> Multiset<Simd<[u32; 4]>, U> where
    UInt<U, B>: ArrayLength<u32x4>, 
[src]

pub fn empty() -> Self[src]

Returns a Multiset of the given array * SIMD vector size with all elements set to zero.

pub fn repeat(elem: u32) -> Self[src]

Returns a Multiset of the given array * SIMD vector size with all elements set to elem.

pub fn from_slice(slice: &[u32]) -> Self[src]

Returns a Multiset from a slice of the given array * SIMD vector size.

pub const fn len() -> usize[src]

The number of elements in the multiset.

pub fn clear(&mut self)[src]

Sets all element counts in the multiset to zero.

pub fn contains(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset.

pub unsafe fn contains_unchecked(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset without bounds checks.

Safety

Does not do bounds check on whether this element is an index in the underlying array.

pub fn intersection(&self, other: &Self) -> Self[src]

Returns a multiset which is the intersection of self and other.

The Intersection of two multisets A & B is defined as the multiset C where C[0] == min(A[0], B[0]).

pub fn union(&self, other: &Self) -> Self[src]

Returns a multiset which is the union of self and other.

The union of two multisets A & B is defined as the multiset C where C[0] == max(A[0], B[0]).

pub fn count_zero(&self) -> u32[src]

Return the number of elements whose member count is zero.

pub fn count_non_zero(&self) -> u32[src]

Return the number of elements whose member count is non-zero.

pub fn is_empty(&self) -> bool[src]

Check whether all elements have zero members.

pub fn is_singleton(&self) -> bool[src]

Check whether only one element has one or more members.

pub fn is_subset(&self, other: &Self) -> bool[src]

Check whether self is a subset of other.

Multisets A is a subset of B if A[i] <= B[i] for all i in A.

pub fn is_superset(&self, other: &Self) -> bool[src]

Check whether self is a superset of other.

Multisets A is a superset of B if A[i] >= B[i] for all i in A.

pub fn is_proper_subset(&self, other: &Self) -> bool[src]

Check whether self is a proper subset of other.

Multisets A is a proper subset of B if A[i] <= B[i] for all i in A and there exists j such that A[j] < B[j].

pub fn is_proper_superset(&self, other: &Self) -> bool[src]

Check whether self is a proper superset of other.

Multisets A is a proper superset of B if A[i] >= B[i] for all i in A and there exists j such that A[j] > B[j].

pub fn is_any_lesser(&self, other: &Self) -> bool[src]

Check whether any element of self is less than an element of other.

True if the exists some i such that A[i] < B[i].

pub fn is_any_greater(&self, other: &Self) -> bool[src]

Check whether any element of self is greater than an element of other.

True if the exists some i such that A[i] > B[i].

pub fn total(&self) -> u32[src]

The total or cardinality of a multiset is the sum of all its elements member counts.

Notes:

  • This may overflow.
  • The implementation uses a horizontal operation on SIMD vectors.

pub fn argmax(&self) -> (usize, u32)[src]

Returns a tuple containing the (element, corresponding largest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

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

Returns the element corresponding to the largest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

pub fn max(&self) -> u32[src]

Returns the largest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vectors.

pub fn argmin(&self) -> (usize, u32)[src]

Returns a tuple containing the (element, corresponding smallest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

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

Returns the element corresponding to the smallest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

pub fn min(&self) -> u32[src]

Returns the smallest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vectors.

pub fn choose(&mut self, elem: usize)[src]

Set all elements member counts, except for the given elem, to zero.

pub fn choose_random(&mut self, rng: &mut StdRng)[src]

Set all elements member counts, except for a random one, to zero.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

pub fn collision_entropy(&self) -> f64[src]

Calculate the collision entropy of the multiset.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

pub fn shannon_entropy(&self) -> f64[src]

Calculate the shannon entropy of the multiset. Uses ln rather than log2.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

impl<U, B> Multiset<Simd<[u32; 8]>, U> where
    UInt<U, B>: ArrayLength<u32x8>, 
[src]

pub fn empty() -> Self[src]

Returns a Multiset of the given array * SIMD vector size with all elements set to zero.

pub fn repeat(elem: u32) -> Self[src]

Returns a Multiset of the given array * SIMD vector size with all elements set to elem.

pub fn from_slice(slice: &[u32]) -> Self[src]

Returns a Multiset from a slice of the given array * SIMD vector size.

pub const fn len() -> usize[src]

The number of elements in the multiset.

pub fn clear(&mut self)[src]

Sets all element counts in the multiset to zero.

pub fn contains(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset.

pub unsafe fn contains_unchecked(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset without bounds checks.

Safety

Does not do bounds check on whether this element is an index in the underlying array.

pub fn intersection(&self, other: &Self) -> Self[src]

Returns a multiset which is the intersection of self and other.

The Intersection of two multisets A & B is defined as the multiset C where C[0] == min(A[0], B[0]).

pub fn union(&self, other: &Self) -> Self[src]

Returns a multiset which is the union of self and other.

The union of two multisets A & B is defined as the multiset C where C[0] == max(A[0], B[0]).

pub fn count_zero(&self) -> u32[src]

Return the number of elements whose member count is zero.

pub fn count_non_zero(&self) -> u32[src]

Return the number of elements whose member count is non-zero.

pub fn is_empty(&self) -> bool[src]

Check whether all elements have zero members.

pub fn is_singleton(&self) -> bool[src]

Check whether only one element has one or more members.

pub fn is_subset(&self, other: &Self) -> bool[src]

Check whether self is a subset of other.

Multisets A is a subset of B if A[i] <= B[i] for all i in A.

pub fn is_superset(&self, other: &Self) -> bool[src]

Check whether self is a superset of other.

Multisets A is a superset of B if A[i] >= B[i] for all i in A.

pub fn is_proper_subset(&self, other: &Self) -> bool[src]

Check whether self is a proper subset of other.

Multisets A is a proper subset of B if A[i] <= B[i] for all i in A and there exists j such that A[j] < B[j].

pub fn is_proper_superset(&self, other: &Self) -> bool[src]

Check whether self is a proper superset of other.

Multisets A is a proper superset of B if A[i] >= B[i] for all i in A and there exists j such that A[j] > B[j].

pub fn is_any_lesser(&self, other: &Self) -> bool[src]

Check whether any element of self is less than an element of other.

True if the exists some i such that A[i] < B[i].

pub fn is_any_greater(&self, other: &Self) -> bool[src]

Check whether any element of self is greater than an element of other.

True if the exists some i such that A[i] > B[i].

pub fn total(&self) -> u32[src]

The total or cardinality of a multiset is the sum of all its elements member counts.

Notes:

  • This may overflow.
  • The implementation uses a horizontal operation on SIMD vectors.

pub fn argmax(&self) -> (usize, u32)[src]

Returns a tuple containing the (element, corresponding largest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

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

Returns the element corresponding to the largest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

pub fn max(&self) -> u32[src]

Returns the largest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vectors.

pub fn argmin(&self) -> (usize, u32)[src]

Returns a tuple containing the (element, corresponding smallest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

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

Returns the element corresponding to the smallest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

pub fn min(&self) -> u32[src]

Returns the smallest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vectors.

pub fn choose(&mut self, elem: usize)[src]

Set all elements member counts, except for the given elem, to zero.

pub fn choose_random(&mut self, rng: &mut StdRng)[src]

Set all elements member counts, except for a random one, to zero.

Notes:

  • The implementation extracts values from the underlying SIMD vectors.

pub fn collision_entropy(&self) -> f64[src]

Calculate the collision entropy of the multiset.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

pub fn shannon_entropy(&self) -> f64[src]

Calculate the shannon entropy of the multiset. Uses ln rather than log2.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

impl Multiset<Simd<[u8; 2]>, UTerm>[src]

pub const fn empty() -> Self[src]

Returns a Multiset of the given SIMD vector size with all elements set to zero.

pub const fn repeat(elem: u8) -> Self[src]

Returns a Multiset of the given SIMD vector size with all elements set to elem.

pub fn from_slice(slice: &[u8]) -> Self[src]

Returns a Multiset from a slice of the given SIMD vector size.

pub const fn len() -> usize[src]

The number of elements in the multiset.

pub fn clear(&mut self)[src]

Sets all element counts in the multiset to zero.

pub fn contains(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset.

pub unsafe fn contains_unchecked(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset without bounds checks.

Safety

Does not do bounds check on whether this element is an index in the underlying SIMD vector.

pub fn intersection(&self, other: &Self) -> Self[src]

Returns a multiset which is the intersection of self and other.

The Intersection of two multisets A & B is defined as the multiset C where C[0] == min(A[0], B[0]).

pub fn union(&self, other: &Self) -> Self[src]

Returns a multiset which is the union of self and other.

The union of two multisets A & B is defined as the multiset C where C[0] == max(A[0], B[0]).

pub fn count_zero(&self) -> u32[src]

Return the number of elements whose member count is zero.

pub fn count_non_zero(&self) -> u32[src]

Return the number of elements whose member count is non-zero.

pub fn is_empty(&self) -> bool[src]

Check whether all elements have zero members.

pub fn is_singleton(&self) -> bool[src]

Check whether only one element has one or more members.

pub fn is_subset(&self, other: &Self) -> bool[src]

Check whether self is a subset of other.

Multisets A is a subset of B if A[i] <= B[i] for all i in A.

pub fn is_superset(&self, other: &Self) -> bool[src]

Check whether self is a superset of other.

Multisets A is a superset of B if A[i] >= B[i] for all i in A.

pub fn is_proper_subset(&self, other: &Self) -> bool[src]

Check whether self is a proper subset of other.

Multisets A is a proper subset of B if A[i] <= B[i] for all i in A and there exists j such that A[j] < B[j].

pub fn is_proper_superset(&self, other: &Self) -> bool[src]

Check whether self is a proper superset of other.

Multisets A is a proper superset of B if A[i] >= B[i] for all i in A and there exists j such that A[j] > B[j].

pub fn is_any_lesser(&self, other: &Self) -> bool[src]

Check whether any element of self is less than an element of other.

True if the exists some i such that A[i] < B[i].

pub fn is_any_greater(&self, other: &Self) -> bool[src]

Check whether any element of self is greater than an element of other.

True if the exists some i such that A[i] > B[i].

pub fn total(&self) -> u8[src]

The total or cardinality of a multiset is the sum of all its elements member counts.

Notes:

  • This may overflow.
  • The implementation uses a horizontal operation on SIMD vectors.

pub fn argmax(&self) -> (usize, u8)[src]

Returns a tuple containing the (element, corresponding largest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

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

Returns the element corresponding to the largest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

pub fn max(&self) -> u8[src]

Returns the largest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vector.

pub fn argmin(&self) -> (usize, u8)[src]

Returns a tuple containing the (element, corresponding smallest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

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

Returns the element corresponding to the smallest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

pub fn min(&self) -> u8[src]

Returns the smallest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vector.

pub fn choose(&mut self, elem: usize)[src]

Set all elements member counts, except for the given elem, to zero.

pub fn choose_random(&mut self, rng: &mut StdRng)[src]

Set all elements member counts, except for a random one, to zero.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

pub fn collision_entropy(&self) -> f64[src]

Calculate the collision entropy of the multiset.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

pub fn shannon_entropy(&self) -> f64[src]

Calculate the shannon entropy of the multiset. Uses ln rather than log2.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

impl Multiset<Simd<[u8; 4]>, UTerm>[src]

pub const fn empty() -> Self[src]

Returns a Multiset of the given SIMD vector size with all elements set to zero.

pub const fn repeat(elem: u8) -> Self[src]

Returns a Multiset of the given SIMD vector size with all elements set to elem.

pub fn from_slice(slice: &[u8]) -> Self[src]

Returns a Multiset from a slice of the given SIMD vector size.

pub const fn len() -> usize[src]

The number of elements in the multiset.

pub fn clear(&mut self)[src]

Sets all element counts in the multiset to zero.

pub fn contains(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset.

pub unsafe fn contains_unchecked(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset without bounds checks.

Safety

Does not do bounds check on whether this element is an index in the underlying SIMD vector.

pub fn intersection(&self, other: &Self) -> Self[src]

Returns a multiset which is the intersection of self and other.

The Intersection of two multisets A & B is defined as the multiset C where C[0] == min(A[0], B[0]).

pub fn union(&self, other: &Self) -> Self[src]

Returns a multiset which is the union of self and other.

The union of two multisets A & B is defined as the multiset C where C[0] == max(A[0], B[0]).

pub fn count_zero(&self) -> u32[src]

Return the number of elements whose member count is zero.

pub fn count_non_zero(&self) -> u32[src]

Return the number of elements whose member count is non-zero.

pub fn is_empty(&self) -> bool[src]

Check whether all elements have zero members.

pub fn is_singleton(&self) -> bool[src]

Check whether only one element has one or more members.

pub fn is_subset(&self, other: &Self) -> bool[src]

Check whether self is a subset of other.

Multisets A is a subset of B if A[i] <= B[i] for all i in A.

pub fn is_superset(&self, other: &Self) -> bool[src]

Check whether self is a superset of other.

Multisets A is a superset of B if A[i] >= B[i] for all i in A.

pub fn is_proper_subset(&self, other: &Self) -> bool[src]

Check whether self is a proper subset of other.

Multisets A is a proper subset of B if A[i] <= B[i] for all i in A and there exists j such that A[j] < B[j].

pub fn is_proper_superset(&self, other: &Self) -> bool[src]

Check whether self is a proper superset of other.

Multisets A is a proper superset of B if A[i] >= B[i] for all i in A and there exists j such that A[j] > B[j].

pub fn is_any_lesser(&self, other: &Self) -> bool[src]

Check whether any element of self is less than an element of other.

True if the exists some i such that A[i] < B[i].

pub fn is_any_greater(&self, other: &Self) -> bool[src]

Check whether any element of self is greater than an element of other.

True if the exists some i such that A[i] > B[i].

pub fn total(&self) -> u8[src]

The total or cardinality of a multiset is the sum of all its elements member counts.

Notes:

  • This may overflow.
  • The implementation uses a horizontal operation on SIMD vectors.

pub fn argmax(&self) -> (usize, u8)[src]

Returns a tuple containing the (element, corresponding largest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

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

Returns the element corresponding to the largest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

pub fn max(&self) -> u8[src]

Returns the largest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vector.

pub fn argmin(&self) -> (usize, u8)[src]

Returns a tuple containing the (element, corresponding smallest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

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

Returns the element corresponding to the smallest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

pub fn min(&self) -> u8[src]

Returns the smallest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vector.

pub fn choose(&mut self, elem: usize)[src]

Set all elements member counts, except for the given elem, to zero.

pub fn choose_random(&mut self, rng: &mut StdRng)[src]

Set all elements member counts, except for a random one, to zero.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

pub fn collision_entropy(&self) -> f64[src]

Calculate the collision entropy of the multiset.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

pub fn shannon_entropy(&self) -> f64[src]

Calculate the shannon entropy of the multiset. Uses ln rather than log2.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

impl Multiset<Simd<[u8; 8]>, UTerm>[src]

pub const fn empty() -> Self[src]

Returns a Multiset of the given SIMD vector size with all elements set to zero.

pub const fn repeat(elem: u8) -> Self[src]

Returns a Multiset of the given SIMD vector size with all elements set to elem.

pub fn from_slice(slice: &[u8]) -> Self[src]

Returns a Multiset from a slice of the given SIMD vector size.

pub const fn len() -> usize[src]

The number of elements in the multiset.

pub fn clear(&mut self)[src]

Sets all element counts in the multiset to zero.

pub fn contains(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset.

pub unsafe fn contains_unchecked(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset without bounds checks.

Safety

Does not do bounds check on whether this element is an index in the underlying SIMD vector.

pub fn intersection(&self, other: &Self) -> Self[src]

Returns a multiset which is the intersection of self and other.

The Intersection of two multisets A & B is defined as the multiset C where C[0] == min(A[0], B[0]).

pub fn union(&self, other: &Self) -> Self[src]

Returns a multiset which is the union of self and other.

The union of two multisets A & B is defined as the multiset C where C[0] == max(A[0], B[0]).

pub fn count_zero(&self) -> u32[src]

Return the number of elements whose member count is zero.

pub fn count_non_zero(&self) -> u32[src]

Return the number of elements whose member count is non-zero.

pub fn is_empty(&self) -> bool[src]

Check whether all elements have zero members.

pub fn is_singleton(&self) -> bool[src]

Check whether only one element has one or more members.

pub fn is_subset(&self, other: &Self) -> bool[src]

Check whether self is a subset of other.

Multisets A is a subset of B if A[i] <= B[i] for all i in A.

pub fn is_superset(&self, other: &Self) -> bool[src]

Check whether self is a superset of other.

Multisets A is a superset of B if A[i] >= B[i] for all i in A.

pub fn is_proper_subset(&self, other: &Self) -> bool[src]

Check whether self is a proper subset of other.

Multisets A is a proper subset of B if A[i] <= B[i] for all i in A and there exists j such that A[j] < B[j].

pub fn is_proper_superset(&self, other: &Self) -> bool[src]

Check whether self is a proper superset of other.

Multisets A is a proper superset of B if A[i] >= B[i] for all i in A and there exists j such that A[j] > B[j].

pub fn is_any_lesser(&self, other: &Self) -> bool[src]

Check whether any element of self is less than an element of other.

True if the exists some i such that A[i] < B[i].

pub fn is_any_greater(&self, other: &Self) -> bool[src]

Check whether any element of self is greater than an element of other.

True if the exists some i such that A[i] > B[i].

pub fn total(&self) -> u8[src]

The total or cardinality of a multiset is the sum of all its elements member counts.

Notes:

  • This may overflow.
  • The implementation uses a horizontal operation on SIMD vectors.

pub fn argmax(&self) -> (usize, u8)[src]

Returns a tuple containing the (element, corresponding largest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

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

Returns the element corresponding to the largest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

pub fn max(&self) -> u8[src]

Returns the largest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vector.

pub fn argmin(&self) -> (usize, u8)[src]

Returns a tuple containing the (element, corresponding smallest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

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

Returns the element corresponding to the smallest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

pub fn min(&self) -> u8[src]

Returns the smallest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vector.

pub fn choose(&mut self, elem: usize)[src]

Set all elements member counts, except for the given elem, to zero.

pub fn choose_random(&mut self, rng: &mut StdRng)[src]

Set all elements member counts, except for a random one, to zero.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

pub fn collision_entropy(&self) -> f64[src]

Calculate the collision entropy of the multiset.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

pub fn shannon_entropy(&self) -> f64[src]

Calculate the shannon entropy of the multiset. Uses ln rather than log2.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

impl Multiset<Simd<[u16; 2]>, UTerm>[src]

pub const fn empty() -> Self[src]

Returns a Multiset of the given SIMD vector size with all elements set to zero.

pub const fn repeat(elem: u16) -> Self[src]

Returns a Multiset of the given SIMD vector size with all elements set to elem.

pub fn from_slice(slice: &[u16]) -> Self[src]

Returns a Multiset from a slice of the given SIMD vector size.

pub const fn len() -> usize[src]

The number of elements in the multiset.

pub fn clear(&mut self)[src]

Sets all element counts in the multiset to zero.

pub fn contains(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset.

pub unsafe fn contains_unchecked(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset without bounds checks.

Safety

Does not do bounds check on whether this element is an index in the underlying SIMD vector.

pub fn intersection(&self, other: &Self) -> Self[src]

Returns a multiset which is the intersection of self and other.

The Intersection of two multisets A & B is defined as the multiset C where C[0] == min(A[0], B[0]).

pub fn union(&self, other: &Self) -> Self[src]

Returns a multiset which is the union of self and other.

The union of two multisets A & B is defined as the multiset C where C[0] == max(A[0], B[0]).

pub fn count_zero(&self) -> u32[src]

Return the number of elements whose member count is zero.

pub fn count_non_zero(&self) -> u32[src]

Return the number of elements whose member count is non-zero.

pub fn is_empty(&self) -> bool[src]

Check whether all elements have zero members.

pub fn is_singleton(&self) -> bool[src]

Check whether only one element has one or more members.

pub fn is_subset(&self, other: &Self) -> bool[src]

Check whether self is a subset of other.

Multisets A is a subset of B if A[i] <= B[i] for all i in A.

pub fn is_superset(&self, other: &Self) -> bool[src]

Check whether self is a superset of other.

Multisets A is a superset of B if A[i] >= B[i] for all i in A.

pub fn is_proper_subset(&self, other: &Self) -> bool[src]

Check whether self is a proper subset of other.

Multisets A is a proper subset of B if A[i] <= B[i] for all i in A and there exists j such that A[j] < B[j].

pub fn is_proper_superset(&self, other: &Self) -> bool[src]

Check whether self is a proper superset of other.

Multisets A is a proper superset of B if A[i] >= B[i] for all i in A and there exists j such that A[j] > B[j].

pub fn is_any_lesser(&self, other: &Self) -> bool[src]

Check whether any element of self is less than an element of other.

True if the exists some i such that A[i] < B[i].

pub fn is_any_greater(&self, other: &Self) -> bool[src]

Check whether any element of self is greater than an element of other.

True if the exists some i such that A[i] > B[i].

pub fn total(&self) -> u16[src]

The total or cardinality of a multiset is the sum of all its elements member counts.

Notes:

  • This may overflow.
  • The implementation uses a horizontal operation on SIMD vectors.

pub fn argmax(&self) -> (usize, u16)[src]

Returns a tuple containing the (element, corresponding largest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

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

Returns the element corresponding to the largest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

pub fn max(&self) -> u16[src]

Returns the largest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vector.

pub fn argmin(&self) -> (usize, u16)[src]

Returns a tuple containing the (element, corresponding smallest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

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

Returns the element corresponding to the smallest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

pub fn min(&self) -> u16[src]

Returns the smallest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vector.

pub fn choose(&mut self, elem: usize)[src]

Set all elements member counts, except for the given elem, to zero.

pub fn choose_random(&mut self, rng: &mut StdRng)[src]

Set all elements member counts, except for a random one, to zero.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

pub fn collision_entropy(&self) -> f64[src]

Calculate the collision entropy of the multiset.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

pub fn shannon_entropy(&self) -> f64[src]

Calculate the shannon entropy of the multiset. Uses ln rather than log2.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

impl Multiset<Simd<[u16; 4]>, UTerm>[src]

pub const fn empty() -> Self[src]

Returns a Multiset of the given SIMD vector size with all elements set to zero.

pub const fn repeat(elem: u16) -> Self[src]

Returns a Multiset of the given SIMD vector size with all elements set to elem.

pub fn from_slice(slice: &[u16]) -> Self[src]

Returns a Multiset from a slice of the given SIMD vector size.

pub const fn len() -> usize[src]

The number of elements in the multiset.

pub fn clear(&mut self)[src]

Sets all element counts in the multiset to zero.

pub fn contains(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset.

pub unsafe fn contains_unchecked(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset without bounds checks.

Safety

Does not do bounds check on whether this element is an index in the underlying SIMD vector.

pub fn intersection(&self, other: &Self) -> Self[src]

Returns a multiset which is the intersection of self and other.

The Intersection of two multisets A & B is defined as the multiset C where C[0] == min(A[0], B[0]).

pub fn union(&self, other: &Self) -> Self[src]

Returns a multiset which is the union of self and other.

The union of two multisets A & B is defined as the multiset C where C[0] == max(A[0], B[0]).

pub fn count_zero(&self) -> u32[src]

Return the number of elements whose member count is zero.

pub fn count_non_zero(&self) -> u32[src]

Return the number of elements whose member count is non-zero.

pub fn is_empty(&self) -> bool[src]

Check whether all elements have zero members.

pub fn is_singleton(&self) -> bool[src]

Check whether only one element has one or more members.

pub fn is_subset(&self, other: &Self) -> bool[src]

Check whether self is a subset of other.

Multisets A is a subset of B if A[i] <= B[i] for all i in A.

pub fn is_superset(&self, other: &Self) -> bool[src]

Check whether self is a superset of other.

Multisets A is a superset of B if A[i] >= B[i] for all i in A.

pub fn is_proper_subset(&self, other: &Self) -> bool[src]

Check whether self is a proper subset of other.

Multisets A is a proper subset of B if A[i] <= B[i] for all i in A and there exists j such that A[j] < B[j].

pub fn is_proper_superset(&self, other: &Self) -> bool[src]

Check whether self is a proper superset of other.

Multisets A is a proper superset of B if A[i] >= B[i] for all i in A and there exists j such that A[j] > B[j].

pub fn is_any_lesser(&self, other: &Self) -> bool[src]

Check whether any element of self is less than an element of other.

True if the exists some i such that A[i] < B[i].

pub fn is_any_greater(&self, other: &Self) -> bool[src]

Check whether any element of self is greater than an element of other.

True if the exists some i such that A[i] > B[i].

pub fn total(&self) -> u16[src]

The total or cardinality of a multiset is the sum of all its elements member counts.

Notes:

  • This may overflow.
  • The implementation uses a horizontal operation on SIMD vectors.

pub fn argmax(&self) -> (usize, u16)[src]

Returns a tuple containing the (element, corresponding largest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

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

Returns the element corresponding to the largest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

pub fn max(&self) -> u16[src]

Returns the largest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vector.

pub fn argmin(&self) -> (usize, u16)[src]

Returns a tuple containing the (element, corresponding smallest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

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

Returns the element corresponding to the smallest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

pub fn min(&self) -> u16[src]

Returns the smallest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vector.

pub fn choose(&mut self, elem: usize)[src]

Set all elements member counts, except for the given elem, to zero.

pub fn choose_random(&mut self, rng: &mut StdRng)[src]

Set all elements member counts, except for a random one, to zero.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

pub fn collision_entropy(&self) -> f64[src]

Calculate the collision entropy of the multiset.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

pub fn shannon_entropy(&self) -> f64[src]

Calculate the shannon entropy of the multiset. Uses ln rather than log2.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

impl Multiset<Simd<[u16; 8]>, UTerm>[src]

pub const fn empty() -> Self[src]

Returns a Multiset of the given SIMD vector size with all elements set to zero.

pub const fn repeat(elem: u16) -> Self[src]

Returns a Multiset of the given SIMD vector size with all elements set to elem.

pub fn from_slice(slice: &[u16]) -> Self[src]

Returns a Multiset from a slice of the given SIMD vector size.

pub const fn len() -> usize[src]

The number of elements in the multiset.

pub fn clear(&mut self)[src]

Sets all element counts in the multiset to zero.

pub fn contains(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset.

pub unsafe fn contains_unchecked(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset without bounds checks.

Safety

Does not do bounds check on whether this element is an index in the underlying SIMD vector.

pub fn intersection(&self, other: &Self) -> Self[src]

Returns a multiset which is the intersection of self and other.

The Intersection of two multisets A & B is defined as the multiset C where C[0] == min(A[0], B[0]).

pub fn union(&self, other: &Self) -> Self[src]

Returns a multiset which is the union of self and other.

The union of two multisets A & B is defined as the multiset C where C[0] == max(A[0], B[0]).

pub fn count_zero(&self) -> u32[src]

Return the number of elements whose member count is zero.

pub fn count_non_zero(&self) -> u32[src]

Return the number of elements whose member count is non-zero.

pub fn is_empty(&self) -> bool[src]

Check whether all elements have zero members.

pub fn is_singleton(&self) -> bool[src]

Check whether only one element has one or more members.

pub fn is_subset(&self, other: &Self) -> bool[src]

Check whether self is a subset of other.

Multisets A is a subset of B if A[i] <= B[i] for all i in A.

pub fn is_superset(&self, other: &Self) -> bool[src]

Check whether self is a superset of other.

Multisets A is a superset of B if A[i] >= B[i] for all i in A.

pub fn is_proper_subset(&self, other: &Self) -> bool[src]

Check whether self is a proper subset of other.

Multisets A is a proper subset of B if A[i] <= B[i] for all i in A and there exists j such that A[j] < B[j].

pub fn is_proper_superset(&self, other: &Self) -> bool[src]

Check whether self is a proper superset of other.

Multisets A is a proper superset of B if A[i] >= B[i] for all i in A and there exists j such that A[j] > B[j].

pub fn is_any_lesser(&self, other: &Self) -> bool[src]

Check whether any element of self is less than an element of other.

True if the exists some i such that A[i] < B[i].

pub fn is_any_greater(&self, other: &Self) -> bool[src]

Check whether any element of self is greater than an element of other.

True if the exists some i such that A[i] > B[i].

pub fn total(&self) -> u16[src]

The total or cardinality of a multiset is the sum of all its elements member counts.

Notes:

  • This may overflow.
  • The implementation uses a horizontal operation on SIMD vectors.

pub fn argmax(&self) -> (usize, u16)[src]

Returns a tuple containing the (element, corresponding largest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

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

Returns the element corresponding to the largest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

pub fn max(&self) -> u16[src]

Returns the largest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vector.

pub fn argmin(&self) -> (usize, u16)[src]

Returns a tuple containing the (element, corresponding smallest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

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

Returns the element corresponding to the smallest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

pub fn min(&self) -> u16[src]

Returns the smallest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vector.

pub fn choose(&mut self, elem: usize)[src]

Set all elements member counts, except for the given elem, to zero.

pub fn choose_random(&mut self, rng: &mut StdRng)[src]

Set all elements member counts, except for a random one, to zero.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

pub fn collision_entropy(&self) -> f64[src]

Calculate the collision entropy of the multiset.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

pub fn shannon_entropy(&self) -> f64[src]

Calculate the shannon entropy of the multiset. Uses ln rather than log2.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

impl Multiset<Simd<[u32; 2]>, UTerm>[src]

pub const fn empty() -> Self[src]

Returns a Multiset of the given SIMD vector size with all elements set to zero.

pub const fn repeat(elem: u32) -> Self[src]

Returns a Multiset of the given SIMD vector size with all elements set to elem.

pub fn from_slice(slice: &[u32]) -> Self[src]

Returns a Multiset from a slice of the given SIMD vector size.

pub const fn len() -> usize[src]

The number of elements in the multiset.

pub fn clear(&mut self)[src]

Sets all element counts in the multiset to zero.

pub fn contains(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset.

pub unsafe fn contains_unchecked(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset without bounds checks.

Safety

Does not do bounds check on whether this element is an index in the underlying SIMD vector.

pub fn intersection(&self, other: &Self) -> Self[src]

Returns a multiset which is the intersection of self and other.

The Intersection of two multisets A & B is defined as the multiset C where C[0] == min(A[0], B[0]).

pub fn union(&self, other: &Self) -> Self[src]

Returns a multiset which is the union of self and other.

The union of two multisets A & B is defined as the multiset C where C[0] == max(A[0], B[0]).

pub fn count_zero(&self) -> u32[src]

Return the number of elements whose member count is zero.

pub fn count_non_zero(&self) -> u32[src]

Return the number of elements whose member count is non-zero.

pub fn is_empty(&self) -> bool[src]

Check whether all elements have zero members.

pub fn is_singleton(&self) -> bool[src]

Check whether only one element has one or more members.

pub fn is_subset(&self, other: &Self) -> bool[src]

Check whether self is a subset of other.

Multisets A is a subset of B if A[i] <= B[i] for all i in A.

pub fn is_superset(&self, other: &Self) -> bool[src]

Check whether self is a superset of other.

Multisets A is a superset of B if A[i] >= B[i] for all i in A.

pub fn is_proper_subset(&self, other: &Self) -> bool[src]

Check whether self is a proper subset of other.

Multisets A is a proper subset of B if A[i] <= B[i] for all i in A and there exists j such that A[j] < B[j].

pub fn is_proper_superset(&self, other: &Self) -> bool[src]

Check whether self is a proper superset of other.

Multisets A is a proper superset of B if A[i] >= B[i] for all i in A and there exists j such that A[j] > B[j].

pub fn is_any_lesser(&self, other: &Self) -> bool[src]

Check whether any element of self is less than an element of other.

True if the exists some i such that A[i] < B[i].

pub fn is_any_greater(&self, other: &Self) -> bool[src]

Check whether any element of self is greater than an element of other.

True if the exists some i such that A[i] > B[i].

pub fn total(&self) -> u32[src]

The total or cardinality of a multiset is the sum of all its elements member counts.

Notes:

  • This may overflow.
  • The implementation uses a horizontal operation on SIMD vectors.

pub fn argmax(&self) -> (usize, u32)[src]

Returns a tuple containing the (element, corresponding largest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

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

Returns the element corresponding to the largest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

pub fn max(&self) -> u32[src]

Returns the largest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vector.

pub fn argmin(&self) -> (usize, u32)[src]

Returns a tuple containing the (element, corresponding smallest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

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

Returns the element corresponding to the smallest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

pub fn min(&self) -> u32[src]

Returns the smallest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vector.

pub fn choose(&mut self, elem: usize)[src]

Set all elements member counts, except for the given elem, to zero.

pub fn choose_random(&mut self, rng: &mut StdRng)[src]

Set all elements member counts, except for a random one, to zero.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

pub fn collision_entropy(&self) -> f64[src]

Calculate the collision entropy of the multiset.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

pub fn shannon_entropy(&self) -> f64[src]

Calculate the shannon entropy of the multiset. Uses ln rather than log2.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

impl Multiset<Simd<[u32; 4]>, UTerm>[src]

pub const fn empty() -> Self[src]

Returns a Multiset of the given SIMD vector size with all elements set to zero.

pub const fn repeat(elem: u32) -> Self[src]

Returns a Multiset of the given SIMD vector size with all elements set to elem.

pub fn from_slice(slice: &[u32]) -> Self[src]

Returns a Multiset from a slice of the given SIMD vector size.

pub const fn len() -> usize[src]

The number of elements in the multiset.

pub fn clear(&mut self)[src]

Sets all element counts in the multiset to zero.

pub fn contains(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset.

pub unsafe fn contains_unchecked(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset without bounds checks.

Safety

Does not do bounds check on whether this element is an index in the underlying SIMD vector.

pub fn intersection(&self, other: &Self) -> Self[src]

Returns a multiset which is the intersection of self and other.

The Intersection of two multisets A & B is defined as the multiset C where C[0] == min(A[0], B[0]).

pub fn union(&self, other: &Self) -> Self[src]

Returns a multiset which is the union of self and other.

The union of two multisets A & B is defined as the multiset C where C[0] == max(A[0], B[0]).

pub fn count_zero(&self) -> u32[src]

Return the number of elements whose member count is zero.

pub fn count_non_zero(&self) -> u32[src]

Return the number of elements whose member count is non-zero.

pub fn is_empty(&self) -> bool[src]

Check whether all elements have zero members.

pub fn is_singleton(&self) -> bool[src]

Check whether only one element has one or more members.

pub fn is_subset(&self, other: &Self) -> bool[src]

Check whether self is a subset of other.

Multisets A is a subset of B if A[i] <= B[i] for all i in A.

pub fn is_superset(&self, other: &Self) -> bool[src]

Check whether self is a superset of other.

Multisets A is a superset of B if A[i] >= B[i] for all i in A.

pub fn is_proper_subset(&self, other: &Self) -> bool[src]

Check whether self is a proper subset of other.

Multisets A is a proper subset of B if A[i] <= B[i] for all i in A and there exists j such that A[j] < B[j].

pub fn is_proper_superset(&self, other: &Self) -> bool[src]

Check whether self is a proper superset of other.

Multisets A is a proper superset of B if A[i] >= B[i] for all i in A and there exists j such that A[j] > B[j].

pub fn is_any_lesser(&self, other: &Self) -> bool[src]

Check whether any element of self is less than an element of other.

True if the exists some i such that A[i] < B[i].

pub fn is_any_greater(&self, other: &Self) -> bool[src]

Check whether any element of self is greater than an element of other.

True if the exists some i such that A[i] > B[i].

pub fn total(&self) -> u32[src]

The total or cardinality of a multiset is the sum of all its elements member counts.

Notes:

  • This may overflow.
  • The implementation uses a horizontal operation on SIMD vectors.

pub fn argmax(&self) -> (usize, u32)[src]

Returns a tuple containing the (element, corresponding largest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

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

Returns the element corresponding to the largest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

pub fn max(&self) -> u32[src]

Returns the largest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vector.

pub fn argmin(&self) -> (usize, u32)[src]

Returns a tuple containing the (element, corresponding smallest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

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

Returns the element corresponding to the smallest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

pub fn min(&self) -> u32[src]

Returns the smallest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vector.

pub fn choose(&mut self, elem: usize)[src]

Set all elements member counts, except for the given elem, to zero.

pub fn choose_random(&mut self, rng: &mut StdRng)[src]

Set all elements member counts, except for a random one, to zero.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

pub fn collision_entropy(&self) -> f64[src]

Calculate the collision entropy of the multiset.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

pub fn shannon_entropy(&self) -> f64[src]

Calculate the shannon entropy of the multiset. Uses ln rather than log2.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

impl Multiset<Simd<[u32; 8]>, UTerm>[src]

pub const fn empty() -> Self[src]

Returns a Multiset of the given SIMD vector size with all elements set to zero.

pub const fn repeat(elem: u32) -> Self[src]

Returns a Multiset of the given SIMD vector size with all elements set to elem.

pub fn from_slice(slice: &[u32]) -> Self[src]

Returns a Multiset from a slice of the given SIMD vector size.

pub const fn len() -> usize[src]

The number of elements in the multiset.

pub fn clear(&mut self)[src]

Sets all element counts in the multiset to zero.

pub fn contains(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset.

pub unsafe fn contains_unchecked(self, elem: usize) -> bool[src]

Checks that a given element has at least one member in the multiset without bounds checks.

Safety

Does not do bounds check on whether this element is an index in the underlying SIMD vector.

pub fn intersection(&self, other: &Self) -> Self[src]

Returns a multiset which is the intersection of self and other.

The Intersection of two multisets A & B is defined as the multiset C where C[0] == min(A[0], B[0]).

pub fn union(&self, other: &Self) -> Self[src]

Returns a multiset which is the union of self and other.

The union of two multisets A & B is defined as the multiset C where C[0] == max(A[0], B[0]).

pub fn count_zero(&self) -> u32[src]

Return the number of elements whose member count is zero.

pub fn count_non_zero(&self) -> u32[src]

Return the number of elements whose member count is non-zero.

pub fn is_empty(&self) -> bool[src]

Check whether all elements have zero members.

pub fn is_singleton(&self) -> bool[src]

Check whether only one element has one or more members.

pub fn is_subset(&self, other: &Self) -> bool[src]

Check whether self is a subset of other.

Multisets A is a subset of B if A[i] <= B[i] for all i in A.

pub fn is_superset(&self, other: &Self) -> bool[src]

Check whether self is a superset of other.

Multisets A is a superset of B if A[i] >= B[i] for all i in A.

pub fn is_proper_subset(&self, other: &Self) -> bool[src]

Check whether self is a proper subset of other.

Multisets A is a proper subset of B if A[i] <= B[i] for all i in A and there exists j such that A[j] < B[j].

pub fn is_proper_superset(&self, other: &Self) -> bool[src]

Check whether self is a proper superset of other.

Multisets A is a proper superset of B if A[i] >= B[i] for all i in A and there exists j such that A[j] > B[j].

pub fn is_any_lesser(&self, other: &Self) -> bool[src]

Check whether any element of self is less than an element of other.

True if the exists some i such that A[i] < B[i].

pub fn is_any_greater(&self, other: &Self) -> bool[src]

Check whether any element of self is greater than an element of other.

True if the exists some i such that A[i] > B[i].

pub fn total(&self) -> u32[src]

The total or cardinality of a multiset is the sum of all its elements member counts.

Notes:

  • This may overflow.
  • The implementation uses a horizontal operation on SIMD vectors.

pub fn argmax(&self) -> (usize, u32)[src]

Returns a tuple containing the (element, corresponding largest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

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

Returns the element corresponding to the largest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

pub fn max(&self) -> u32[src]

Returns the largest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vector.

pub fn argmin(&self) -> (usize, u32)[src]

Returns a tuple containing the (element, corresponding smallest member count) in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

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

Returns the element corresponding to the smallest member count in the multiset.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

pub fn min(&self) -> u32[src]

Returns the smallest member count in the multiset.

Notes:

  • The implementation uses a horizontal operation on the underlying SIMD vector.

pub fn choose(&mut self, elem: usize)[src]

Set all elements member counts, except for the given elem, to zero.

pub fn choose_random(&mut self, rng: &mut StdRng)[src]

Set all elements member counts, except for a random one, to zero.

Notes:

  • The implementation extracts values from the underlying SIMD vector.

pub fn collision_entropy(&self) -> f64[src]

Calculate the collision entropy of the multiset.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

pub fn shannon_entropy(&self) -> f64[src]

Calculate the shannon entropy of the multiset. Uses ln rather than log2.

Notes:

  • The implementation uses a horizontal operation on SIMD vectors.

Trait Implementations

impl<N, U, B> AddAssign<Multiset<N, UInt<U, B>>> for Multiset<N, UInt<U, B>> where
    N: AddAssign + Copy,
    UInt<U, B>: ArrayLength<N>, 
[src]

impl<N> AddAssign<Multiset<N, UTerm>> for Multiset<N, U0> where
    N: AddAssign
[src]

impl<N: Clone, U: Clone + MultisetStorage<N>> Clone for Multiset<N, U> where
    U::Storage: Clone
[src]

impl<N: Copy, U: Copy + MultisetStorage<N>> Copy for Multiset<N, U> where
    U::Storage: Copy
[src]

impl<N: Debug, U: Debug + MultisetStorage<N>> Debug for Multiset<N, U> where
    U::Storage: Debug
[src]

impl<N, U, B> DivAssign<Multiset<N, UInt<U, B>>> for Multiset<N, UInt<U, B>> where
    N: DivAssign + Copy,
    UInt<U, B>: ArrayLength<N>, 
[src]

impl<N> DivAssign<Multiset<N, UTerm>> for Multiset<N, U0> where
    N: DivAssign
[src]

impl<N, U, B> MulAssign<Multiset<N, UInt<U, B>>> for Multiset<N, UInt<U, B>> where
    N: MulAssign + Copy,
    UInt<U, B>: ArrayLength<N>, 
[src]

impl<N> MulAssign<Multiset<N, UTerm>> for Multiset<N, U0> where
    N: MulAssign
[src]

impl<N, U: MultisetStorage<N>> PartialEq<Multiset<N, U>> for Multiset<N, U> where
    <U as MultisetStorage<N>>::Storage: PartialEq
[src]

impl<U, B> PartialOrd<Multiset<Simd<[u16; 2]>, UInt<U, B>>> for MSu16x2<UInt<U, B>> where
    UInt<U, B>: ArrayLength<u16x2>, 
[src]

impl PartialOrd<Multiset<Simd<[u16; 2]>, UTerm>> for MS0u16x2[src]

impl<U, B> PartialOrd<Multiset<Simd<[u16; 4]>, UInt<U, B>>> for MSu16x4<UInt<U, B>> where
    UInt<U, B>: ArrayLength<u16x4>, 
[src]

impl PartialOrd<Multiset<Simd<[u16; 4]>, UTerm>> for MS0u16x4[src]

impl<U, B> PartialOrd<Multiset<Simd<[u16; 8]>, UInt<U, B>>> for MSu16x8<UInt<U, B>> where
    UInt<U, B>: ArrayLength<u16x8>, 
[src]

impl PartialOrd<Multiset<Simd<[u16; 8]>, UTerm>> for MS0u16x8[src]

impl<U, B> PartialOrd<Multiset<Simd<[u32; 2]>, UInt<U, B>>> for MSu32x2<UInt<U, B>> where
    UInt<U, B>: ArrayLength<u32x2>, 
[src]

impl PartialOrd<Multiset<Simd<[u32; 2]>, UTerm>> for MS0u32x2[src]

impl<U, B> PartialOrd<Multiset<Simd<[u32; 4]>, UInt<U, B>>> for MSu32x4<UInt<U, B>> where
    UInt<U, B>: ArrayLength<u32x4>, 
[src]

impl PartialOrd<Multiset<Simd<[u32; 4]>, UTerm>> for MS0u32x4[src]

impl<U, B> PartialOrd<Multiset<Simd<[u32; 8]>, UInt<U, B>>> for MSu32x8<UInt<U, B>> where
    UInt<U, B>: ArrayLength<u32x8>, 
[src]

impl PartialOrd<Multiset<Simd<[u32; 8]>, UTerm>> for MS0u32x8[src]

impl<U, B> PartialOrd<Multiset<Simd<[u8; 2]>, UInt<U, B>>> for MSu8x2<UInt<U, B>> where
    UInt<U, B>: ArrayLength<u8x2>, 
[src]

impl PartialOrd<Multiset<Simd<[u8; 2]>, UTerm>> for MS0u8x2[src]

impl<U, B> PartialOrd<Multiset<Simd<[u8; 4]>, UInt<U, B>>> for MSu8x4<UInt<U, B>> where
    UInt<U, B>: ArrayLength<u8x4>, 
[src]

impl PartialOrd<Multiset<Simd<[u8; 4]>, UTerm>> for MS0u8x4[src]

impl<U, B> PartialOrd<Multiset<Simd<[u8; 8]>, UInt<U, B>>> for MSu8x8<UInt<U, B>> where
    UInt<U, B>: ArrayLength<u8x8>, 
[src]

impl PartialOrd<Multiset<Simd<[u8; 8]>, UTerm>> for MS0u8x8[src]

impl<U, B> PartialOrd<Multiset<u16, UInt<U, B>>> for MSu16<UInt<U, B>> where
    UInt<U, B>: ArrayLength<u16>, 
[src]

impl<U, B> PartialOrd<Multiset<u32, UInt<U, B>>> for MSu32<UInt<U, B>> where
    UInt<U, B>: ArrayLength<u32>, 
[src]

impl<U, B> PartialOrd<Multiset<u8, UInt<U, B>>> for MSu8<UInt<U, B>> where
    UInt<U, B>: ArrayLength<u8>, 
[src]

impl<N, U, B> SubAssign<Multiset<N, UInt<U, B>>> for Multiset<N, UInt<U, B>> where
    N: SubAssign + Copy,
    UInt<U, B>: ArrayLength<N>, 
[src]

impl<N> SubAssign<Multiset<N, UTerm>> for Multiset<N, U0> where
    N: SubAssign
[src]

Auto Trait Implementations

impl<N, U> RefUnwindSafe for Multiset<N, U> where
    <U as MultisetStorage<N>>::Storage: RefUnwindSafe
[src]

impl<N, U> Send for Multiset<N, U> where
    <U as MultisetStorage<N>>::Storage: Send
[src]

impl<N, U> Sync for Multiset<N, U> where
    <U as MultisetStorage<N>>::Storage: Sync
[src]

impl<N, U> Unpin for Multiset<N, U> where
    <U as MultisetStorage<N>>::Storage: Unpin
[src]

impl<N, U> UnwindSafe for Multiset<N, U> where
    <U as MultisetStorage<N>>::Storage: UnwindSafe
[src]

Blanket Implementations

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

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

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

impl<T, U> Cast<U> for T where
    U: FromCast<T>, 
[src]

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

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

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

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

type Output = T

Should always be Self

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

type Owned = T

The resulting type after obtaining ownership.

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<V, T> VZip<V> for T where
    V: MultiLane<T>,