Trait consalign::Zero

source ·
pub trait Zero: Sized + Add<Self, Output = Self> {
    // Required methods
    fn zero() -> Self;
    fn is_zero(&self) -> bool;

    // Provided method
    fn set_zero(&mut self) { ... }
}
Expand description

Defines an additive identity element for Self.

Laws

a + 0 = a       ∀ a ∈ Self
0 + a = a       ∀ a ∈ Self

Required Methods§

source

fn zero() -> Self

Returns the additive identity element of Self, 0.

Purity

This function should return the same result at all times regardless of external mutable state, for example values stored in TLS or in static muts.

source

fn is_zero(&self) -> bool

Returns true if self is equal to the additive identity.

Provided Methods§

source

fn set_zero(&mut self)

Sets self to the additive identity element of Self, 0.

Implementations on Foreign Types§

§

impl Zero for Prob

§

fn zero() -> Prob

§

fn is_zero(&self) -> bool

§

impl Zero for PHREDProb

§

fn zero() -> PHREDProb

§

fn is_zero(&self) -> bool

§

impl Zero for LogProb

§

fn zero() -> LogProb

§

fn is_zero(&self) -> bool

source§

impl Zero for u64

source§

fn zero() -> u64

source§

fn is_zero(&self) -> bool

source§

impl Zero for u128

source§

impl Zero for f32

source§

fn zero() -> f32

source§

fn is_zero(&self) -> bool

source§

impl Zero for i16

source§

fn zero() -> i16

source§

fn is_zero(&self) -> bool

source§

impl Zero for u16

source§

fn zero() -> u16

source§

fn is_zero(&self) -> bool

source§

impl Zero for i64

source§

fn zero() -> i64

source§

fn is_zero(&self) -> bool

source§

impl Zero for i32

source§

fn zero() -> i32

source§

fn is_zero(&self) -> bool

source§

impl Zero for usize

source§

impl Zero for i8

source§

fn zero() -> i8

source§

fn is_zero(&self) -> bool

source§

impl Zero for f64

source§

fn zero() -> f64

source§

fn is_zero(&self) -> bool

source§

impl Zero for i128

source§

impl Zero for isize

source§

impl<T> Zero for Wrapping<T>where T: Zero, Wrapping<T>: Add<Wrapping<T>, Output = Wrapping<T>>,

source§

fn is_zero(&self) -> bool

source§

fn set_zero(&mut self)

source§

fn zero() -> Wrapping<T>

source§

impl Zero for u32

source§

fn zero() -> u32

source§

fn is_zero(&self) -> bool

source§

impl Zero for u8

source§

fn zero() -> u8

source§

fn is_zero(&self) -> bool

source§

impl<T> Zero for Complex<T>where T: Clone + Num,

source§

fn zero() -> Complex<T>

source§

fn is_zero(&self) -> bool

source§

fn set_zero(&mut self)

§

impl<T> Zero for OrderedFloat<T>where T: Zero,

§

fn zero() -> OrderedFloat<T>

§

fn is_zero(&self) -> bool

§

impl<T> Zero for NotNan<T>where T: Float,

§

fn zero() -> NotNan<T>

§

fn is_zero(&self) -> bool

source§

impl<T> Zero for DualQuaternion<T>where T: SimdRealField, <T as SimdValue>::Element: SimdRealField,

source§

impl<T, R, C> Zero for Matrix<T, R, C, <DefaultAllocator as Allocator<T, R, C>>::Buffer>where R: DimName, C: DimName, T: Scalar + Zero + ClosedAdd<T>, DefaultAllocator: Allocator<T, R, C>,

source§

fn zero() -> Matrix<T, R, C, <DefaultAllocator as Allocator<T, R, C>>::Buffer>

source§

fn is_zero(&self) -> bool

source§

impl<T> Zero for Quaternion<T>where T: SimdRealField, <T as SimdValue>::Element: SimdRealField,

§

impl Zero for AutoSimd<[i64; 4]>

§

fn zero() -> AutoSimd<[i64; 4]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[i8; 32]>

§

fn zero() -> AutoSimd<[i8; 32]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[u128; 1]>

§

fn zero() -> AutoSimd<[u128; 1]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[u64; 8]>

§

fn zero() -> AutoSimd<[u64; 8]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[i32; 2]>

§

fn zero() -> AutoSimd<[i32; 2]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[u64; 4]>

§

fn zero() -> AutoSimd<[u64; 4]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[f32; 4]>

§

fn zero() -> AutoSimd<[f32; 4]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[usize; 2]>

§

fn zero() -> AutoSimd<[usize; 2]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[u8; 32]>

§

fn zero() -> AutoSimd<[u8; 32]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[i16; 32]>

§

fn zero() -> AutoSimd<[i16; 32]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[u16; 16]>

§

fn zero() -> AutoSimd<[u16; 16]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[i8; 4]>

§

fn zero() -> AutoSimd<[i8; 4]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[u16; 8]>

§

fn zero() -> AutoSimd<[u16; 8]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[usize; 4]>

§

fn zero() -> AutoSimd<[usize; 4]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[u16; 32]>

§

fn zero() -> AutoSimd<[u16; 32]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[isize; 8]>

§

fn zero() -> AutoSimd<[isize; 8]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[u32; 8]>

§

fn zero() -> AutoSimd<[u32; 8]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[f64; 8]>

§

fn zero() -> AutoSimd<[f64; 8]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[i128; 4]>

§

fn zero() -> AutoSimd<[i128; 4]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[i32; 16]>

§

fn zero() -> AutoSimd<[i32; 16]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[u16; 2]>

§

fn zero() -> AutoSimd<[u16; 2]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[isize; 2]>

§

fn zero() -> AutoSimd<[isize; 2]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[f32; 2]>

§

fn zero() -> AutoSimd<[f32; 2]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[u16; 4]>

§

fn zero() -> AutoSimd<[u16; 4]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[u8; 8]>

§

fn zero() -> AutoSimd<[u8; 8]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[u128; 4]>

§

fn zero() -> AutoSimd<[u128; 4]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[i32; 4]>

§

fn zero() -> AutoSimd<[i32; 4]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[u8; 2]>

§

fn zero() -> AutoSimd<[u8; 2]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[i64; 2]>

§

fn zero() -> AutoSimd<[i64; 2]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[u32; 2]>

§

fn zero() -> AutoSimd<[u32; 2]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[u8; 4]>

§

fn zero() -> AutoSimd<[u8; 4]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[u64; 2]>

§

fn zero() -> AutoSimd<[u64; 2]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[u32; 4]>

§

fn zero() -> AutoSimd<[u32; 4]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[i8; 16]>

§

fn zero() -> AutoSimd<[i8; 16]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[f64; 2]>

§

fn zero() -> AutoSimd<[f64; 2]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[i128; 2]>

§

fn zero() -> AutoSimd<[i128; 2]>

§

fn is_zero(&self) -> bool

§

impl Zero for WideF32x4

§

fn zero() -> WideF32x4

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[f64; 4]>

§

fn zero() -> AutoSimd<[f64; 4]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[i128; 1]>

§

fn zero() -> AutoSimd<[i128; 1]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[f32; 16]>

§

fn zero() -> AutoSimd<[f32; 16]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[i64; 8]>

§

fn zero() -> AutoSimd<[i64; 8]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[i16; 2]>

§

fn zero() -> AutoSimd<[i16; 2]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[i16; 8]>

§

fn zero() -> AutoSimd<[i16; 8]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[usize; 8]>

§

fn zero() -> AutoSimd<[usize; 8]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[u32; 16]>

§

fn zero() -> AutoSimd<[u32; 16]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[i8; 8]>

§

fn zero() -> AutoSimd<[i8; 8]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[i16; 16]>

§

fn zero() -> AutoSimd<[i16; 16]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[isize; 4]>

§

fn zero() -> AutoSimd<[isize; 4]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[f32; 8]>

§

fn zero() -> AutoSimd<[f32; 8]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[i32; 8]>

§

fn zero() -> AutoSimd<[i32; 8]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[i8; 2]>

§

fn zero() -> AutoSimd<[i8; 2]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[u128; 2]>

§

fn zero() -> AutoSimd<[u128; 2]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[i16; 4]>

§

fn zero() -> AutoSimd<[i16; 4]>

§

fn is_zero(&self) -> bool

§

impl Zero for AutoSimd<[u8; 16]>

§

fn zero() -> AutoSimd<[u8; 16]>

§

fn is_zero(&self) -> bool

source§

impl<T> Zero for Ratio<T>where T: Clone + Integer,

source§

fn zero() -> Ratio<T>

source§

fn is_zero(&self) -> bool

source§

fn set_zero(&mut self)

source§

impl Zero for BigInt

source§

fn zero() -> BigInt

source§

fn set_zero(&mut self)

source§

fn is_zero(&self) -> bool

source§

impl Zero for BigUint

source§

fn zero() -> BigUint

source§

fn set_zero(&mut self)

source§

fn is_zero(&self) -> bool

source§

impl<T> Zero for Complex<T>where T: Clone + Num,

source§

fn zero() -> Complex<T>

source§

fn is_zero(&self) -> bool

source§

fn set_zero(&mut self)

source§

impl<T> Zero for Ratio<T>where T: Clone + Integer,

source§

fn zero() -> Ratio<T>

source§

fn is_zero(&self) -> bool

source§

fn set_zero(&mut self)

Implementors§

source§

impl Zero for Dim<[usize; 0]>

source§

impl Zero for Dim<[usize; 1]>

source§

impl Zero for Dim<[usize; 2]>

source§

impl Zero for Dim<[usize; 3]>

source§

impl Zero for Dim<[usize; 4]>

source§

impl Zero for Dim<[usize; 5]>

source§

impl Zero for Dim<[usize; 6]>