Trait num::traits::Zero
[−]
[src]
pub trait Zero: Add<Self, Output=Self> {
fn zero() -> Self;
fn is_zero(&self) -> bool;
}Defines an additive identity element for Self.
Deriving
This trait can be automatically be derived using #[deriving(Zero)]
attribute. If you choose to use this, make sure that the laws outlined in
the documentation for Zero::zero still hold.
Required Methods
fn zero() -> Self
Returns the additive identity element of Self, 0.
Laws
a + 0 = a ∀ a ∈ Self
0 + a = a ∀ a ∈ Self
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.
fn is_zero(&self) -> bool
Returns true if self is equal to the additive identity.
Implementors
impl Zero for BigUintimpl Zero for BigIntimpl<T: Clone + Num> Zero for Complex<T>impl Zero for usizeimpl Zero for u8impl Zero for u16impl Zero for u32impl Zero for u64impl Zero for isizeimpl Zero for i8impl Zero for i16impl Zero for i32impl Zero for i64impl Zero for f32impl Zero for f64impl<T: Clone + Integer + PartialOrd> Zero for Ratio<T>