[−][src]Struct typenum::array::TArr
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]
A: Len,
Length<A>: Add<B1>,
Sum<Length<A>, B1>: Unsigned,
Size of a TypeArray
type Output = Add1<Length<A>>
The length as a type-level unsigned integer.
fn len(&self) -> Self::Output
[src]
impl<V, A, Rhs> PartialDiv<Rhs> for TArr<V, A> where
V: PartialDiv<Rhs>,
A: PartialDiv<Rhs>,
[src]
V: PartialDiv<Rhs>,
A: PartialDiv<Rhs>,
type Output = TArr<PartialQuot<V, Rhs>, PartialQuot<A, Rhs>>
The type of the result of the division
fn partial_div(self, _: Rhs) -> Self::Output
[src]
impl<V: Debug, A: Debug> Debug for TArr<V, A>
[src]
impl<V, A, Rhs> Div<Rhs> for TArr<V, A> where
V: Div<Rhs>,
A: Div<Rhs>,
[src]
V: Div<Rhs>,
A: Div<Rhs>,
type Output = TArr<Quot<V, Rhs>, Quot<A, Rhs>>
The resulting type after applying the /
operator.
fn div(self, _: Rhs) -> Self::Output
[src]
impl<V, A, Rhs> Rem<Rhs> for TArr<V, A> where
V: Rem<Rhs>,
A: Rem<Rhs>,
[src]
V: Rem<Rhs>,
A: Rem<Rhs>,
type Output = TArr<Mod<V, Rhs>, Mod<A, Rhs>>
The resulting type after applying the %
operator.
fn rem(self, _: Rhs) -> Self::Output
[src]
impl<Vl, Al, Vr, Ar> Sub<TArr<Vr, Ar>> for TArr<Vl, Al> where
Vl: Sub<Vr>,
Al: Sub<Ar>,
[src]
Vl: Sub<Vr>,
Al: Sub<Ar>,
type Output = TArr<Diff<Vl, Vr>, Diff<Al, Ar>>
The resulting type after applying the -
operator.
fn sub(self, _: TArr<Vr, Ar>) -> Self::Output
[src]
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 cmp(&self, other: &TArr<V, A>) -> Ordering
[src]
fn max(self, other: Self) -> Self
1.21.0[src]
fn min(self, other: Self) -> Self
1.21.0[src]
fn clamp(self, min: Self, max: Self) -> Self
[src]
impl<V: PartialOrd, A: PartialOrd> PartialOrd<TArr<V, A>> for TArr<V, A>
[src]
fn partial_cmp(&self, other: &TArr<V, A>) -> Option<Ordering>
[src]
fn lt(&self, other: &TArr<V, A>) -> bool
[src]
fn le(&self, other: &TArr<V, A>) -> bool
[src]
fn gt(&self, other: &TArr<V, A>) -> bool
[src]
fn ge(&self, other: &TArr<V, A>) -> bool
[src]
impl<Al, Vl, Ar, Vr> Add<TArr<Vr, Ar>> for TArr<Vl, Al> where
Al: Add<Ar>,
Vl: Add<Vr>,
[src]
Al: Add<Ar>,
Vl: Add<Vr>,
type Output = TArr<Sum<Vl, Vr>, Sum<Al, Ar>>
The resulting type after applying the +
operator.
fn add(self, _: TArr<Vr, Ar>) -> Self::Output
[src]
impl<V, A, Rhs> Mul<Rhs> for TArr<V, A> where
V: Mul<Rhs>,
A: Mul<Rhs>,
[src]
V: Mul<Rhs>,
A: Mul<Rhs>,
type Output = TArr<Prod<V, Rhs>, Prod<A, Rhs>>
The resulting type after applying the *
operator.
fn mul(self, _: Rhs) -> Self::Output
[src]
impl<V, A> Mul<TArr<V, A>> for Z0 where
Z0: Mul<A>,
[src]
Z0: Mul<A>,
type Output = TArr<Z0, Prod<Z0, A>>
The resulting type after applying the *
operator.
fn mul(self, _: TArr<V, A>) -> Self::Output
[src]
impl<V, A, U> Mul<TArr<V, A>> for PInt<U> where
U: Unsigned + NonZero,
PInt<U>: Mul<A> + Mul<V>,
[src]
U: Unsigned + NonZero,
PInt<U>: Mul<A> + Mul<V>,
type Output = TArr<Prod<PInt<U>, V>, Prod<PInt<U>, A>>
The resulting type after applying the *
operator.
fn mul(self, _: TArr<V, A>) -> Self::Output
[src]
impl<V, A, U> Mul<TArr<V, A>> for NInt<U> where
U: Unsigned + NonZero,
NInt<U>: Mul<A> + Mul<V>,
[src]
U: Unsigned + NonZero,
NInt<U>: Mul<A> + Mul<V>,
type Output = TArr<Prod<NInt<U>, V>, Prod<NInt<U>, A>>
The resulting type after applying the *
operator.
fn mul(self, _: TArr<V, A>) -> Self::Output
[src]
impl<V, A> Neg for TArr<V, A> where
V: Neg,
A: Neg,
[src]
V: Neg,
A: Neg,
type Output = TArr<Negate<V>, Negate<A>>
The resulting type after applying the -
operator.
fn neg(self) -> Self::Output
[src]
impl<V: Hash, A: Hash> Hash for TArr<V, A>
[src]
fn hash<__H: Hasher>(&self, state: &mut __H)
[src]
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
impl<V: Copy, A: Copy> Copy for TArr<V, A>
[src]
impl<V: Clone, A: Clone> Clone for TArr<V, A>
[src]
fn clone(&self) -> TArr<V, A>
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Auto Trait Implementations
impl<V, A> Unpin for TArr<V, A> where
A: Unpin,
V: Unpin,
A: Unpin,
V: Unpin,
impl<V, A> Send for TArr<V, A> where
A: Send,
V: Send,
A: Send,
V: Send,
impl<V, A> Sync for TArr<V, A> where
A: Sync,
V: Sync,
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]
M: Integer + Div<N> + Rem<N, Output = Z0>,
type Output = <M as Div<N>>::Output
The type of the result of the division
fn partial_div(Self, N) -> <M as PartialDiv<N>>::Output
[src]
impl<T> From<T> for T
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,