Trait cgmath::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 mut
s.
fn is_zero(&self) -> bool
Returns true
if self
is equal to the additive identity.
Implementors
impl<S: BaseFloat> Zero for Matrix2<S>
impl<S: BaseFloat> Zero for Matrix3<S>
impl<S: BaseFloat> Zero for Matrix4<S>
impl<S: Zero + BaseNum> Zero for Vector2<S>
impl<S: Zero + BaseNum> Zero for Vector3<S>
impl<S: Zero + BaseNum> Zero for Vector4<S>
impl<S: BaseFloat> Zero for Rad<S>
impl<S: BaseFloat> Zero for Deg<S>