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

    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§

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.

Returns true if self is equal to the additive identity.

Provided Methods§

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

Implementations on Foreign Types§

Implementors§

impl<Frac> Zero for FixedI8<Frac>

impl<Frac> Zero for FixedI16<Frac>

impl<Frac> Zero for FixedI32<Frac>

impl<Frac> Zero for FixedI64<Frac>

impl<Frac> Zero for FixedI128<Frac>

impl<Frac> Zero for FixedU8<Frac>

impl<Frac> Zero for FixedU16<Frac>

impl<Frac> Zero for FixedU32<Frac>

impl<Frac> Zero for FixedU64<Frac>

impl<Frac> Zero for FixedU128<Frac>

impl Zero for Weight

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

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

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

impl Zero for BigInt

impl Zero for BigUint

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

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

impl<T: Float> Zero for OrderedFloat<T>

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

impl Zero for PriceEntry

impl Zero for AutoSimd<[f32; 2]>

impl Zero for AutoSimd<[f32; 4]>

impl Zero for AutoSimd<[f32; 8]>

impl Zero for AutoSimd<[f32; 16]>

impl Zero for AutoSimd<[f64; 2]>

impl Zero for AutoSimd<[f64; 4]>

impl Zero for AutoSimd<[f64; 8]>

impl Zero for AutoSimd<[i128; 1]>

impl Zero for AutoSimd<[i128; 2]>

impl Zero for AutoSimd<[i128; 4]>

impl Zero for AutoSimd<[i16; 2]>

impl Zero for AutoSimd<[i16; 4]>

impl Zero for AutoSimd<[i16; 8]>

impl Zero for AutoSimd<[i16; 16]>

impl Zero for AutoSimd<[i16; 32]>

impl Zero for AutoSimd<[i32; 2]>

impl Zero for AutoSimd<[i32; 4]>

impl Zero for AutoSimd<[i32; 8]>

impl Zero for AutoSimd<[i32; 16]>

impl Zero for AutoSimd<[i64; 2]>

impl Zero for AutoSimd<[i64; 4]>

impl Zero for AutoSimd<[i64; 8]>

impl Zero for AutoSimd<[i8; 2]>

impl Zero for AutoSimd<[i8; 4]>

impl Zero for AutoSimd<[i8; 8]>

impl Zero for AutoSimd<[i8; 16]>

impl Zero for AutoSimd<[i8; 32]>

impl Zero for AutoSimd<[isize; 2]>

impl Zero for AutoSimd<[isize; 4]>

impl Zero for AutoSimd<[isize; 8]>

impl Zero for AutoSimd<[u128; 1]>

impl Zero for AutoSimd<[u128; 2]>

impl Zero for AutoSimd<[u128; 4]>

impl Zero for AutoSimd<[u16; 2]>

impl Zero for AutoSimd<[u16; 4]>

impl Zero for AutoSimd<[u16; 8]>

impl Zero for AutoSimd<[u16; 16]>

impl Zero for AutoSimd<[u16; 32]>

impl Zero for AutoSimd<[u32; 2]>

impl Zero for AutoSimd<[u32; 4]>

impl Zero for AutoSimd<[u32; 8]>

impl Zero for AutoSimd<[u32; 16]>

impl Zero for AutoSimd<[u64; 2]>

impl Zero for AutoSimd<[u64; 4]>

impl Zero for AutoSimd<[u64; 8]>

impl Zero for AutoSimd<[u8; 2]>

impl Zero for AutoSimd<[u8; 4]>

impl Zero for AutoSimd<[u8; 8]>

impl Zero for AutoSimd<[u8; 16]>

impl Zero for AutoSimd<[u8; 32]>

impl Zero for AutoSimd<[usize; 2]>

impl Zero for AutoSimd<[usize; 4]>

impl Zero for AutoSimd<[usize; 8]>

impl Zero for BigUint

impl Zero for FixedI64

impl Zero for FixedU64

impl Zero for FixedI128

impl Zero for FixedU128

impl Zero for Percent

impl Zero for PerU16

impl Zero for Permill

impl Zero for Perbill

impl Zero for Perquintill