Trait num_traits::identities::One[][src]

pub trait One: Sized + Mul<Self, Output = Self> {
    fn one() -> Self;

    fn is_one(&self) -> bool
    where
        Self: PartialEq
, { ... } }
[]

Defines a multiplicative identity element for Self.

Required Methods

[]

Returns the multiplicative identity element of Self, 1.

Laws

a * 1 = a       ∀ a ∈ Self
1 * 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.

Provided Methods

[]

Returns true if self is equal to the multiplicative identity.

For performance reasons, it's best to implement this manually. After a semver bump, this method will be required, and the where Self: PartialEq bound will be removed.

Implementations on Foreign Types

impl One for usize
[src]

[]

impl One for u8
[src]

[]

impl One for u16
[src]

[]

impl One for u32
[src]

[]

impl One for u64
[src]

[]

impl One for u128
[src]

[]

impl One for isize
[src]

[]

impl One for i8
[src]

[]

impl One for i16
[src]

[]

impl One for i32
[src]

[]

impl One for i64
[src]

[]

impl One for i128
[src]

[]

impl One for f32
[src]

[]

impl One for f64
[src]

[]

impl<T: One> One for Wrapping<T> where
    Wrapping<T>: Mul<Output = Wrapping<T>>, 
[src]

[]

Implementors