Crate const_identities[][src]

Extends the traits from num_traits::identities to use an associated constant.

Examples

#![feature(const_fn)]

use const_identities::ConstZero;

pub struct Newtype<T>(pub T);

impl<T: ConstZero> Newtype<T> {
    pub const fn zero() -> Self {
        Newtype(T::ZERO)
    }
}

assert_eq!(Newtype::<i32>::zero().0, 0);

Traits

ConstOne

The multiplicative identity element for Self, expressed as an associated constant.

ConstZero

The additive identity element for Self, expressed as an associated constant.