[][src]Struct typenum::array::TArr

pub struct TArr<V, A> { /* fields omitted */ }

TArr is a type that acts as an array of types. It is defined similarly to UInt, only its values can be more than bits, and it is designed to act as an array. So you can only add two if they have the same number of elements, for example.

This array is only really designed to contain Integer types. If you use it with others, you may find it lacking functionality.

Trait Implementations

impl<V, A> TypeArray for TArr<V, A>[src]

impl<V, A> Len for TArr<V, A> where
    A: Len,
    Length<A>: Add<B1>,
    Sum<Length<A>, B1>: Unsigned
[src]

Size of a TypeArray

type Output = Add1<Length<A>>

The length as a type-level unsigned integer.

impl<V, A, Rhs> PartialDiv<Rhs> for TArr<V, A> where
    V: PartialDiv<Rhs>,
    A: PartialDiv<Rhs>, 
[src]

type Output = TArr<PartialQuot<V, Rhs>, PartialQuot<A, Rhs>>

The type of the result of the division

impl<V: PartialEq, A: PartialEq> PartialEq<TArr<V, A>> for TArr<V, A>[src]

impl<V: Eq, A: Eq> Eq for TArr<V, A>[src]

impl<V: Ord, A: Ord> Ord for TArr<V, A>[src]

fn max(self, other: Self) -> Self1.21.0[src]

Compares and returns the maximum of two values. Read more

fn min(self, other: Self) -> Self1.21.0[src]

Compares and returns the minimum of two values. Read more

fn clamp(self, min: Self, max: Self) -> Self[src]

🔬 This is a nightly-only experimental API. (clamp)

Restrict a value to a certain interval. Read more

impl<V: PartialOrd, A: PartialOrd> PartialOrd<TArr<V, A>> for TArr<V, A>[src]

impl<V: Hash, A: Hash> Hash for TArr<V, A>[src]

fn hash_slice<H>(data: &[Self], state: &mut H) where
    H: Hasher
1.3.0[src]

Feeds a slice of this type into the given [Hasher]. Read more

impl<V: Debug, A: Debug> Debug for TArr<V, A>[src]

impl<V, A, Rhs> Rem<Rhs> for TArr<V, A> where
    V: Rem<Rhs>,
    A: Rem<Rhs>, 
[src]

type Output = TArr<Mod<V, Rhs>, Mod<A, Rhs>>

The resulting type after applying the % operator.

impl<Al, Vl, Ar, Vr> Add<TArr<Vr, Ar>> for TArr<Vl, Al> where
    Al: Add<Ar>,
    Vl: Add<Vr>, 
[src]

type Output = TArr<Sum<Vl, Vr>, Sum<Al, Ar>>

The resulting type after applying the + operator.

impl<Vl, Al, Vr, Ar> Sub<TArr<Vr, Ar>> for TArr<Vl, Al> where
    Vl: Sub<Vr>,
    Al: Sub<Ar>, 
[src]

type Output = TArr<Diff<Vl, Vr>, Diff<Al, Ar>>

The resulting type after applying the - operator.

impl<V, A, Rhs> Mul<Rhs> for TArr<V, A> where
    V: Mul<Rhs>,
    A: Mul<Rhs>, 
[src]

type Output = TArr<Prod<V, Rhs>, Prod<A, Rhs>>

The resulting type after applying the * operator.

impl<V, A> Mul<TArr<V, A>> for Z0 where
    Z0: Mul<A>, 
[src]

type Output = TArr<Z0, Prod<Z0, A>>

The resulting type after applying the * operator.

impl<V, A, U> Mul<TArr<V, A>> for PInt<U> where
    U: Unsigned + NonZero,
    PInt<U>: Mul<A> + Mul<V>, 
[src]

type Output = TArr<Prod<PInt<U>, V>, Prod<PInt<U>, A>>

The resulting type after applying the * operator.

impl<V, A, U> Mul<TArr<V, A>> for NInt<U> where
    U: Unsigned + NonZero,
    NInt<U>: Mul<A> + Mul<V>, 
[src]

type Output = TArr<Prod<NInt<U>, V>, Prod<NInt<U>, A>>

The resulting type after applying the * operator.

impl<V, A, Rhs> Div<Rhs> for TArr<V, A> where
    V: Div<Rhs>,
    A: Div<Rhs>, 
[src]

type Output = TArr<Quot<V, Rhs>, Quot<A, Rhs>>

The resulting type after applying the / operator.

impl<V, A> Neg for TArr<V, A> where
    V: Neg,
    A: Neg
[src]

type Output = TArr<Negate<V>, Negate<A>>

The resulting type after applying the - operator.

impl<V: Copy, A: Copy> Copy for TArr<V, A>[src]

impl<V: Clone, A: Clone> Clone for TArr<V, A>[src]

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

Auto Trait Implementations

impl<V, A> Unpin for TArr<V, A> where
    A: Unpin,
    V: Unpin

impl<V, A> Send for TArr<V, A> where
    A: Send,
    V: Send

impl<V, A> Sync for TArr<V, A> where
    A: Sync,
    V: Sync

Blanket Implementations

impl<T> Same<T> for T[src]

type Output = T

Should always be Self

impl<M, N> PartialDiv<N> for M where
    M: Integer + Div<N> + Rem<N, Output = Z0>, 
[src]

type Output = <M as Div<N>>::Output

The type of the result of the division

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]