Struct tuplez::Tuple

source ·
pub struct Tuple<First, Other>(pub First, pub Other);
Expand description

The type used to represent tuples containing at least one element.

See Unit type which represents tuples containing no elements.

The TupleLike trait defines the basic mothods of all Tuple types and Unit type.

You can create a tuple quickly and easily using the tuple! macro:

use tuplez::*;
let tup = tuple!(1, "hello", 3.14);

Use ; to indicate repeated elements:

use tuplez::*;
assert_eq!(tuple!(1.0, 2;3, "3"), tuple!(1.0, 2, 2, 2, "3"));

Remember that macros do not directly evaluate expressions, so:

use tuplez::*;

let mut x = 0;
assert_eq!(tuple!({x += 1; x}; 3), tuple!(1, 2, 3));

§Representation

Unlike primitive tuple types, Tuple uses a recursive form of representation:

Primitive tuple representation:
    (T0, T1, T2, T3)
`Tuple` representation:
    Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Unit>>>>

… but don’t worry, in almost all cases Tuple will not take up more memory:

use std::mem::size_of;
use tuplez::*;
assert_eq!(size_of::<(i32, f64, &str)>(),
    size_of::<Tuple<i32, Tuple<f64, Tuple<&str, Unit>>>>());

The advantage of using the recursive form of representation is that we can implement a variety of methods on tuples of any length, instead of only implementing these methods on tuples of length less than 12 (or 32).

As a shorthand, we use Tuple<T0, T1, ... Tn> to represent a Tuple type containing N+1 elements in the following text, please keep in mind that this is not a true Tuple representation.

A Tuple can also be used as one of the elements of another Tuple, without restriction.

§Explicit tuple types

In most cases, Tuple or Tuple<_, _> is sufficient to meet the syntax requirements:

use tuplez::*;

let tup = Tuple::from((1, "hello", 3.14)); // or
let tup: Tuple<_, _> = From::from((1, "hello", 3.14));

But sometimes, you may still need to specify the complete tuple type explicitly. At this point, you can use the tuple_t! macro to generate it:

use tuplez::*;

let tup: tuple_t!(i32, String, f64) = Default::default();
assert_eq!(tup, tuple!(0, String::new(), 0.0));

let unit: tuple_t!() = Default::default();
assert_eq!(unit, tuple!());

fn use_tuple(tup: tuple_t!(i32, &dyn std::fmt::Debug, tuple_t!(String, String))) {
    todo!()
}

Use ; to indicate repeated types:

use tuplez::*;

let tup: tuple_t!(i32, f64;3, i32) = tuple!(1, 2.0, 3.0, 4.0, 5);

§Element access

There is a get! macro that can be used to get elements, the only restriction is that the index must be an integer literal:

use tuplez::*;

let tup = tuple!(1, "hello", 3.14);
assert_eq!(get!(tup; 0), 1);
assert_eq!(get!(tup; 1), "hello");
assert_eq!(get!(tup; 2), 3.14);

This macro will be expanded to standard member access syntax:

get!(tup; 0) => tup.0
get!(tup; 1) => tup.1.0
get!(tup; 2) => tup.1.1.0

… so, here’s an example of modifying elements:

use tuplez::*;

fn add_one(x: &mut i32) { *x += 1; }

let mut tup = tuple!(1, "hello", 3.14);
add_one(&mut get!(tup; 0));
assert_eq!(tup, tuple!(2, "hello", 3.14));

§Push, pop, join and split

Any tuple can push further elements, or join another one, with no length limit.

use tuplez::*;

let tup = tuple!();

let tup2 = tup.push(1);             // Push element to back
assert_eq!(tup2, tuple!(1));

let tup3 = tup2.push_back("hello"); // Same as `push`, push element to back
assert_eq!(tup3, tuple!(1, "hello"));

let tup4 = tup3.push_front(3.14);   // Push element to front
assert_eq!(tup4, tuple!(3.14, 1, "hello"));

let tup5 = tup3.join(tup4);         // Join two tuples
assert_eq!(tup5, tuple!(1, "hello", 3.14, 1, "hello"));

Units are not Popable, and all Tuples are Popable:

use tuplez::*;

let tup = tuple!(1, "hello", 3.14, [1, 2, 3]);

let (tup2, arr) = tup.pop();        // Pop element from back
assert_eq!(tup2, tuple!(1, "hello", 3.14));
assert_eq!(arr, [1, 2, 3]);

let (tup3, pi) = tup2.pop_back();   // Same as `pop`, pop element from back
assert_eq!(tup3, tuple!(1, "hello"));
assert_eq!(pi, 3.14);

let (tup4, num) = tup3.pop_front();  // Pop element from front
assert_eq!(tup4, tuple!("hello"));
assert_eq!(num, 1);

let (unit, hello) = tup4.pop();
assert_eq!(unit, tuple!());
assert_eq!(hello, "hello");

// _ = unit.pop()                   // Error: cannot pop an `Unit`

You can use the split_at! macro to split a tuple into two parts. Like the get! macro, the index must be an integer literal:

use tuplez::*;

let tup = tuple!(1, "hello", 3.14, [1, 2, 3]);

let (left, right) = split_at!(tup; 2);
assert_eq!(left, tuple!(1, "hello"));
assert_eq!(right, tuple!(3.14, [1, 2, 3]));

let (left, right) = split_at!(tup; 0);
assert_eq!(left, tuple!());
assert_eq!(right, tup);

let (left, right) = split_at!(tup; 4);
assert_eq!(left, tup);
assert_eq!(right, tuple!());

§Trait implementations on Tuple

For Tuple<T0, T1, ... Tn>, when all types T0, T1, … Tn implement the Debug / Clone / Copy / PartialEq / Eq / PartialOrd / Ord / Hash / Default / Neg / Not trait(s), then the Tuple<T0, T1, ... Tn> also implements it/them.

For example:

use tuplez::*;

let tup = tuple!(false, true, 26u8);            // All elements implement `Not`
assert_eq!(!tup, tuple!(true, false, 229u8));   // So `Tuple` also implements `Not`

For Tuple<T0, T1, ... Tn> and Tuple<U0, U1, ... Un>, when each Ti implements Trait<Ui> if the Trait is Add / AddAssign / Sub / SubAssign / Mul / MulAssign / Div / DivAssign / Rem / RemAssign / BitAnd / BitAndAssign / BitOr / BitOrAssign / BitXor / BitXorAssign / Shl / ShlAssign / Shr / ShrAssign, then Tuple<T0, T1, ... Tn> also implements Trait<Tuple<U0, U1, ... Un>>.

For example:

use tuplez::*;

let tup1 = tuple!(5, "hello ".to_string());
let tup2 = tuple!(4, "world");
assert_eq!(tup1 + tup2, tuple!(9, "hello world".to_string()));

When you try to implement your own traits on Tuples, remember the key idea - recursion. You bound Other with the same trait, and implement that trait for Unit as the termination of recursion.

This is an example of generating Fibonacci numbers based on Tuples:

use tuplez::*;

trait Fibonacci {
    const CURRENT: usize;
    const NEXT: usize;

    fn fib(&self) -> Vec<usize>;
}

impl Fibonacci for Unit {
    const CURRENT: usize = 0;
    const NEXT: usize = 1;

    fn fib(&self) -> Vec<usize> {
        vec![]
    }
}

impl<First, Other> Fibonacci for Tuple<First, Other>
where
    Other: TupleLike + Fibonacci,
{
    const CURRENT: usize = Other::NEXT;
    const NEXT: usize = Other::CURRENT + Other::NEXT;

    fn fib(&self) -> Vec<usize> {
        let mut v = self.1.fib();
        v.push(Self::CURRENT);
        v
    }
}

assert_eq!(tuple!((); 10).fib(), vec![1, 1, 2, 3, 5, 8, 13, 21, 34, 55]);

§Traverse tuples

You can traverse tuples by foreach(), foreach_mut() and foreach_once().

Silimar to Fn / FnMut / FnOnce, foreach() will traverse all elements in the form of &T, foreach_mut() will traverse all elements in the form of &mut T, and foreach_once() will traverse all elements in the form of T, so foreach_once() will take the ownership of the tuple.

Call foreach() / foreach_mut() / foreach_once() on a tuple requires a functor implementing Mapper / MapperMut / MapperOnce as the paramter. Check their documentation pages for examples.

However, here are mapper! / mapper_mut! / mapper_once! macros that can help you quickly generate a simple functor:

use tuplez::*;

fn to_string<T: ToString>(v: T) -> String {
    v.to_string()
}

let tup = tuple!(1, "hello", 3.14);
let tup2 = tup.foreach_once(mapper_once!{
    _ => String: to_string where ToString
});     // Currently, the bounds of the function must be written explicitly within the macro
assert_eq!(tup2, tuple!("1".to_string(), "hello".to_string(), "3.14".to_string()));

let tup3 = tup.foreach(mapper!{
   x: i32 => i64: *x as i64;
   x: f32 => String: x.to_string();
   x, 'a: &'a str => &'a [u8]: x.as_bytes()
});     // Reference types need to explicitly introduce its lifetime parameters
assert_eq!(tup3, tuple!(1i64, b"hello" as &[u8], "3.14".to_string()));

Check the documentation pages of these macros for detailed syntax.

§Convert from/to primitive tuples

Okay, we’re finally talking about the only interfaces of Tuple that limits the maximum number of elements.

Since Rust does not have a way to represent primitive tuple types with an arbitrary number of elements, the interfaces for converting from/to primitive tuple types is only implemented for Tuples with no more than 32 elements.

use tuplez::*;

let tup = tuple!(1, "hello", 3.14);
let prim_tup = (1, "hello", 3.14);
assert_eq!(tup.primitive(), prim_tup);
assert_eq!(tup, Tuple::from(prim_tup));

let unit = tuple!();
let prim_unit = ();
assert_eq!(unit.primitive(), prim_unit);
assert_eq!(unit, <tuple_t!()>::from(prim_unit));

§Convert from/to primitive arrays

If all elements of a tuple are of the same type, then it can be converted from/to primitive arrays.

Currently we can’t convert tuple from/to primitive arrays with no limit on the number of elements, since the generic constant expressions feature is still unstable yet.

Therefore, by default only tuples with no more than 32 elements are supported to be converted from/to primitive arrays.

However, if you are OK with using rustc released to nightly channel to compile codes with unstable features, you can enable the any_array feature, then tuplez will use unstable features to implement conversion from/to primitive arrays on tuples of any number of elements.

tuplez = { features = [ "any_array" ] }

For examples:

// Enable Rust's `generic_const_exprs` feature if you enable tuplez's `any_array` feature.
#![cfg_attr(feature = "any_array", feature(generic_const_exprs))]

use tuplez::*;

assert_eq!(tuple!(1, 2, 3, 4, 5, 6).to_array(), [1, 2, 3, 4, 5, 6]);
assert_eq!(<tuple_t!(i32; 4)>::from([1, 2, 3, 4]), tuple!(1, 2, 3, 4));

// `Unit` can be converted from/to array of any element type
let _ : [i32; 0] = tuple!().to_array();
let _ : [String; 0] = tuple!().to_array();
let _ = <tuple_t!()>::from([3.14; 0]);
let _ = <tuple_t!()>::from([""; 0]);

Tuple Fields§

§0: First

First element.

§1: Other

Other elements. See representation.

Implementations§

source§

impl<First, Other> Tuple<First, Other>
where Other: TupleLike + Unwrap, First: Unwrap,

source

pub fn try_unwrap(self) -> Option<<Self as Unwrap>::Output>

Convert Tuple<Wrapper0<T0>, Wrapper1<T1>, ... Wrappern<Tn>> to Option<Tuple<T0, T1, ..., Tn>>, when all element types Wrapper0, Wrapper1Wrappern implmenet Unwrap.

Only available if the unwrap feature is enabled (enabled by default).

§Example
use tuplez::*;

let tup = tuple!(Some(1), Ok::<f32, ()>(3.14));
assert_eq!(tup.try_unwrap(), Some(tuple!(1, 3.14)));
let tup2 = tuple!(Some("hello"), Err::<i32, &str>("failed"));
assert_eq!(tup2.try_unwrap(), None);

Trait Implementations§

source§

impl<First1, Other1, First2, Other2> Add<Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: Add<First2>, Other1: Add<Other2>,

§

type Output = Tuple<<First1 as Add<First2>>::Output, <Other1 as Add<Other2>>::Output>

The resulting type after applying the + operator.
source§

fn add(self, rhs: Tuple<First2, Other2>) -> Self::Output

Performs the + operation. Read more
source§

impl<First1, Other1, First2, Other2> AddAssign<Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: AddAssign<First2>, Other1: AddAssign<Other2>,

source§

fn add_assign(&mut self, rhs: Tuple<First2, Other2>)

Performs the += operation. Read more
source§

impl<First1, Other1, First2, Other2> BitAnd<Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: BitAnd<First2>, Other1: BitAnd<Other2>,

§

type Output = Tuple<<First1 as BitAnd<First2>>::Output, <Other1 as BitAnd<Other2>>::Output>

The resulting type after applying the & operator.
source§

fn bitand(self, rhs: Tuple<First2, Other2>) -> Self::Output

Performs the & operation. Read more
source§

impl<First1, Other1, First2, Other2> BitAndAssign<Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: BitAndAssign<First2>, Other1: BitAndAssign<Other2>,

source§

fn bitand_assign(&mut self, rhs: Tuple<First2, Other2>)

Performs the &= operation. Read more
source§

impl<First1, Other1, First2, Other2> BitOr<Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: BitOr<First2>, Other1: BitOr<Other2>,

§

type Output = Tuple<<First1 as BitOr<First2>>::Output, <Other1 as BitOr<Other2>>::Output>

The resulting type after applying the | operator.
source§

fn bitor(self, rhs: Tuple<First2, Other2>) -> Self::Output

Performs the | operation. Read more
source§

impl<First1, Other1, First2, Other2> BitOrAssign<Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: BitOrAssign<First2>, Other1: BitOrAssign<Other2>,

source§

fn bitor_assign(&mut self, rhs: Tuple<First2, Other2>)

Performs the |= operation. Read more
source§

impl<First1, Other1, First2, Other2> BitXor<Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: BitXor<First2>, Other1: BitXor<Other2>,

§

type Output = Tuple<<First1 as BitXor<First2>>::Output, <Other1 as BitXor<Other2>>::Output>

The resulting type after applying the ^ operator.
source§

fn bitxor(self, rhs: Tuple<First2, Other2>) -> Self::Output

Performs the ^ operation. Read more
source§

impl<First1, Other1, First2, Other2> BitXorAssign<Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: BitXorAssign<First2>, Other1: BitXorAssign<Other2>,

source§

fn bitxor_assign(&mut self, rhs: Tuple<First2, Other2>)

Performs the ^= operation. Read more
source§

impl<First: Clone, Other: Clone> Clone for Tuple<First, Other>

source§

fn clone(&self) -> Tuple<First, Other>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<First: Debug, Other: Debug> Debug for Tuple<First, Other>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<First: Default, Other: Default> Default for Tuple<First, Other>

source§

fn default() -> Tuple<First, Other>

Returns the “default value” for a type. Read more
source§

impl<First1, Other1, First2, Other2> Div<Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: Div<First2>, Other1: Div<Other2>,

§

type Output = Tuple<<First1 as Div<First2>>::Output, <Other1 as Div<Other2>>::Output>

The resulting type after applying the / operator.
source§

fn div(self, rhs: Tuple<First2, Other2>) -> Self::Output

Performs the / operation. Read more
source§

impl<First1, Other1, First2, Other2> DivAssign<Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: DivAssign<First2>, Other1: DivAssign<Other2>,

source§

fn div_assign(&mut self, rhs: Tuple<First2, Other2>)

Performs the /= operation. Read more
source§

impl<F, First, Other> Foreach<F> for Tuple<First, Other>
where F: Mapper<First>, Other: Foreach<F>,

§

type Output = Tuple<<F as Mapper<First>>::Output, <Other as Foreach<F>>::Output>

The type of tuple generated by traversing the tuple.
source§

fn foreach(&self, f: &mut F) -> Self::Output

Traverse the tuple by immutable references to its elements, and collect the output of traversal into a new tuple. Read more
source§

impl<F, First, Other> ForeachMut<F> for Tuple<First, Other>
where F: MapperMut<First>, Other: ForeachMut<F>,

§

type Output = Tuple<<F as MapperMut<First>>::Output, <Other as ForeachMut<F>>::Output>

The type of tuple generated by traversing the tuple.
source§

fn foreach_mut(&mut self, f: &mut F) -> Self::Output

Traverse the tuple by mutable references to its elements, and collect the output of traversal into a new tuple. Read more
source§

impl<F, First, Other> ForeachOnce<F> for Tuple<First, Other>
where F: MapperOnce<First>, Other: ForeachOnce<F>,

§

type Output = Tuple<<F as MapperOnce<First>>::Output, <Other as ForeachOnce<F>>::Output>

The type of tuple generated by traversing the tuple.
source§

fn foreach_once(self, f: &mut F) -> Self::Output

Traverse the tuple by take its elements, and collect the output of traversal into a new tuple. Read more
source§

impl<T> From<[T; 1]> for Tuple<T, Unit>

source§

fn from(arr: [T; 1]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 10]> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>

source§

fn from(arr: [T; 10]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 11]> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>

source§

fn from(arr: [T; 11]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 12]> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>

source§

fn from(arr: [T; 12]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 13]> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>

source§

fn from(arr: [T; 13]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 14]> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>

source§

fn from(arr: [T; 14]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 15]> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>

source§

fn from(arr: [T; 15]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 16]> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>>

source§

fn from(arr: [T; 16]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 17]> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>>>

source§

fn from(arr: [T; 17]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 18]> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>>>>

source§

fn from(arr: [T; 18]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 19]> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>>>>>

source§

fn from(arr: [T; 19]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 2]> for Tuple<T, Tuple<T, Unit>>

source§

fn from(arr: [T; 2]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 20]> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>>>>>>

source§

fn from(arr: [T; 20]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 21]> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>>>>>>>

source§

fn from(arr: [T; 21]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 22]> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>>>>>>>>

source§

fn from(arr: [T; 22]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 23]> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>>>>>>>>>

source§

fn from(arr: [T; 23]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 24]> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>>>>>>>>>>

source§

fn from(arr: [T; 24]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 25]> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>>>>>>>>>>>

source§

fn from(arr: [T; 25]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 26]> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>>>>>>>>>>>>

source§

fn from(arr: [T; 26]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 27]> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>>>>>>>>>>>>>

source§

fn from(arr: [T; 27]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 28]> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>>>>>>>>>>>>>>

source§

fn from(arr: [T; 28]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 29]> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

source§

fn from(arr: [T; 29]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 3]> for Tuple<T, Tuple<T, Tuple<T, Unit>>>

source§

fn from(arr: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 30]> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

source§

fn from(arr: [T; 30]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 31]> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

source§

fn from(arr: [T; 31]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 32]> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

source§

fn from(arr: [T; 32]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 4]> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>

source§

fn from(arr: [T; 4]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 5]> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>

source§

fn from(arr: [T; 5]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 6]> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>

source§

fn from(arr: [T; 6]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 7]> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>

source§

fn from(arr: [T; 7]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 8]> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>

source§

fn from(arr: [T; 8]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 9]> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>

source§

fn from(arr: [T; 9]) -> Self

Converts to this type from the input type.
source§

impl<T0> From<(T0,)> for Tuple<T0, Unit>

source§

fn from(prim: (T0,)) -> Self

Converts to this type from the input type.
source§

impl<T0, T1> From<(T0, T1)> for Tuple<T0, Tuple<T1, Unit>>

source§

fn from(prim: (T0, T1)) -> Self

Converts to this type from the input type.
source§

impl<T0, T1, T2> From<(T0, T1, T2)> for Tuple<T0, Tuple<T1, Tuple<T2, Unit>>>

source§

fn from(prim: (T0, T1, T2)) -> Self

Converts to this type from the input type.
source§

impl<T0, T1, T2, T3> From<(T0, T1, T2, T3)> for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Unit>>>>

source§

fn from(prim: (T0, T1, T2, T3)) -> Self

Converts to this type from the input type.
source§

impl<T0, T1, T2, T3, T4> From<(T0, T1, T2, T3, T4)> for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Unit>>>>>

source§

fn from(prim: (T0, T1, T2, T3, T4)) -> Self

Converts to this type from the input type.
source§

impl<T0, T1, T2, T3, T4, T5> From<(T0, T1, T2, T3, T4, T5)> for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Unit>>>>>>

source§

fn from(prim: (T0, T1, T2, T3, T4, T5)) -> Self

Converts to this type from the input type.
source§

impl<T0, T1, T2, T3, T4, T5, T6> From<(T0, T1, T2, T3, T4, T5, T6)> for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Unit>>>>>>>

source§

fn from(prim: (T0, T1, T2, T3, T4, T5, T6)) -> Self

Converts to this type from the input type.
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7> From<(T0, T1, T2, T3, T4, T5, T6, T7)> for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Unit>>>>>>>>

source§

fn from(prim: (T0, T1, T2, T3, T4, T5, T6, T7)) -> Self

Converts to this type from the input type.
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8)> for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Unit>>>>>>>>>

source§

fn from(prim: (T0, T1, T2, T3, T4, T5, T6, T7, T8)) -> Self

Converts to this type from the input type.
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9)> for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Unit>>>>>>>>>>

source§

fn from(prim: (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9)) -> Self

Converts to this type from the input type.
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)> for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Unit>>>>>>>>>>>

source§

fn from(prim: (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)) -> Self

Converts to this type from the input type.
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)> for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Unit>>>>>>>>>>>>

source§

fn from(prim: (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)) -> Self

Converts to this type from the input type.
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)> for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Unit>>>>>>>>>>>>>

source§

fn from(prim: (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)) -> Self

Converts to this type from the input type.
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13)> for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Unit>>>>>>>>>>>>>>

source§

fn from( prim: (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) ) -> Self

Converts to this type from the input type.
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14)> for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Unit>>>>>>>>>>>>>>>

source§

fn from( prim: (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) ) -> Self

Converts to this type from the input type.
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)> for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Tuple<T15, Unit>>>>>>>>>>>>>>>>

source§

fn from( prim: (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) ) -> Self

Converts to this type from the input type.
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16)> for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Tuple<T15, Tuple<T16, Unit>>>>>>>>>>>>>>>>>

source§

fn from( prim: (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16) ) -> Self

Converts to this type from the input type.
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17)> for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Tuple<T15, Tuple<T16, Tuple<T17, Unit>>>>>>>>>>>>>>>>>>

source§

fn from( prim: (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17) ) -> Self

Converts to this type from the input type.
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18)> for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Tuple<T15, Tuple<T16, Tuple<T17, Tuple<T18, Unit>>>>>>>>>>>>>>>>>>>

source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19)> for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Tuple<T15, Tuple<T16, Tuple<T17, Tuple<T18, Tuple<T19, Unit>>>>>>>>>>>>>>>>>>>>

source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20)> for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Tuple<T15, Tuple<T16, Tuple<T17, Tuple<T18, Tuple<T19, Tuple<T20, Unit>>>>>>>>>>>>>>>>>>>>>

source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21)> for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Tuple<T15, Tuple<T16, Tuple<T17, Tuple<T18, Tuple<T19, Tuple<T20, Tuple<T21, Unit>>>>>>>>>>>>>>>>>>>>>>

source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22)> for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Tuple<T15, Tuple<T16, Tuple<T17, Tuple<T18, Tuple<T19, Tuple<T20, Tuple<T21, Tuple<T22, Unit>>>>>>>>>>>>>>>>>>>>>>>

source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23)> for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Tuple<T15, Tuple<T16, Tuple<T17, Tuple<T18, Tuple<T19, Tuple<T20, Tuple<T21, Tuple<T22, Tuple<T23, Unit>>>>>>>>>>>>>>>>>>>>>>>>

source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24)> for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Tuple<T15, Tuple<T16, Tuple<T17, Tuple<T18, Tuple<T19, Tuple<T20, Tuple<T21, Tuple<T22, Tuple<T23, Tuple<T24, Unit>>>>>>>>>>>>>>>>>>>>>>>>>

source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25)> for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Tuple<T15, Tuple<T16, Tuple<T17, Tuple<T18, Tuple<T19, Tuple<T20, Tuple<T21, Tuple<T22, Tuple<T23, Tuple<T24, Tuple<T25, Unit>>>>>>>>>>>>>>>>>>>>>>>>>>

source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26)> for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Tuple<T15, Tuple<T16, Tuple<T17, Tuple<T18, Tuple<T19, Tuple<T20, Tuple<T21, Tuple<T22, Tuple<T23, Tuple<T24, Tuple<T25, Tuple<T26, Unit>>>>>>>>>>>>>>>>>>>>>>>>>>>

source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27)> for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Tuple<T15, Tuple<T16, Tuple<T17, Tuple<T18, Tuple<T19, Tuple<T20, Tuple<T21, Tuple<T22, Tuple<T23, Tuple<T24, Tuple<T25, Tuple<T26, Tuple<T27, Unit>>>>>>>>>>>>>>>>>>>>>>>>>>>>

source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28)> for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Tuple<T15, Tuple<T16, Tuple<T17, Tuple<T18, Tuple<T19, Tuple<T20, Tuple<T21, Tuple<T22, Tuple<T23, Tuple<T24, Tuple<T25, Tuple<T26, Tuple<T27, Tuple<T28, Unit>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29)> for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Tuple<T15, Tuple<T16, Tuple<T17, Tuple<T18, Tuple<T19, Tuple<T20, Tuple<T21, Tuple<T22, Tuple<T23, Tuple<T24, Tuple<T25, Tuple<T26, Tuple<T27, Tuple<T28, Tuple<T29, Unit>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30)> for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Tuple<T15, Tuple<T16, Tuple<T17, Tuple<T18, Tuple<T19, Tuple<T20, Tuple<T21, Tuple<T22, Tuple<T23, Tuple<T24, Tuple<T25, Tuple<T26, Tuple<T27, Tuple<T28, Tuple<T29, Tuple<T30, Unit>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31)> for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Tuple<T15, Tuple<T16, Tuple<T17, Tuple<T18, Tuple<T19, Tuple<T20, Tuple<T21, Tuple<T22, Tuple<T23, Tuple<T24, Tuple<T25, Tuple<T26, Tuple<T27, Tuple<T28, Tuple<T29, Tuple<T30, Tuple<T31, Unit>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

source§

impl<First: Hash, Other: Hash> Hash for Tuple<First, Other>

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

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

Feeds a slice of this type into the given Hasher. Read more
source§

impl<First1, Other1, First2, Other2> Mul<Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: Mul<First2>, Other1: Mul<Other2>,

§

type Output = Tuple<<First1 as Mul<First2>>::Output, <Other1 as Mul<Other2>>::Output>

The resulting type after applying the * operator.
source§

fn mul(self, rhs: Tuple<First2, Other2>) -> Self::Output

Performs the * operation. Read more
source§

impl<First1, Other1, First2, Other2> MulAssign<Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: MulAssign<First2>, Other1: MulAssign<Other2>,

source§

fn mul_assign(&mut self, rhs: Tuple<First2, Other2>)

Performs the *= operation. Read more
source§

impl<First: Neg, Other: Neg> Neg for Tuple<First, Other>

§

type Output = Tuple<<First as Neg>::Output, <Other as Neg>::Output>

The resulting type after applying the - operator.
source§

fn neg(self) -> Self::Output

Performs the unary - operation. Read more
source§

impl<First: Not, Other: Not> Not for Tuple<First, Other>

§

type Output = Tuple<<First as Not>::Output, <Other as Not>::Output>

The resulting type after applying the ! operator.
source§

fn not(self) -> Self::Output

Performs the unary ! operation. Read more
source§

impl<First: Ord, Other: Ord> Ord for Tuple<First, Other>

source§

fn cmp(&self, other: &Tuple<First, Other>) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · source§

fn max(self, other: Self) -> Self
where Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · source§

fn min(self, other: Self) -> Self
where Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 · source§

fn clamp(self, min: Self, max: Self) -> Self
where Self: Sized + PartialOrd,

Restrict a value to a certain interval. Read more
source§

impl<First: PartialEq, Other: PartialEq> PartialEq for Tuple<First, Other>

source§

fn eq(&self, other: &Tuple<First, Other>) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl<First: PartialOrd, Other: PartialOrd> PartialOrd for Tuple<First, Other>

source§

fn partial_cmp(&self, other: &Tuple<First, Other>) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · source§

fn lt(&self, other: &Rhs) -> bool

This method tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · source§

fn le(&self, other: &Rhs) -> bool

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · source§

fn gt(&self, other: &Rhs) -> bool

This method tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · source§

fn ge(&self, other: &Rhs) -> bool

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more
source§

impl<First, Other> Popable for Tuple<First, Other>
where Other: Popable + TupleLike,

§

type PopFrontOutput = Other

The type of tuple generated by popping an element from the front of the tuple.
§

type PopFrontElemet = First

The type of the element popped from the front of the tuple.
§

type PopBackOutput = Tuple<First, <Other as Popable>::PopBackOutput>

The type of tuple generated by popping an element from the back of the tuple.
§

type PopBackElement = <Other as Popable>::PopBackElement

The type of the element popped from the back of the tuple.
source§

fn pop(self) -> (Self::PopBackOutput, Self::PopBackElement)

Pop an element from the back of the tuple. Read more
source§

fn pop_front(self) -> (Self::PopFrontOutput, Self::PopFrontElemet)

Pop an element from the front of the tuple. Read more
source§

fn pop_back(self) -> (Self::PopBackOutput, Self::PopBackElement)

Pop an element from the back of the tuple. Same as pop().
source§

impl<First> Popable for Tuple<First, Unit>

§

type PopFrontOutput = Unit

The type of tuple generated by popping an element from the front of the tuple.
§

type PopFrontElemet = First

The type of the element popped from the front of the tuple.
§

type PopBackOutput = Unit

The type of tuple generated by popping an element from the back of the tuple.
§

type PopBackElement = First

The type of the element popped from the back of the tuple.
source§

fn pop(self) -> (Self::PopBackOutput, Self::PopBackElement)

Pop an element from the back of the tuple. Read more
source§

fn pop_front(self) -> (Self::PopFrontOutput, Self::PopFrontElemet)

Pop an element from the front of the tuple. Read more
source§

fn pop_back(self) -> (Self::PopBackOutput, Self::PopBackElement)

Pop an element from the back of the tuple. Same as pop().
source§

impl<First1, Other1, First2, Other2> Rem<Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: Rem<First2>, Other1: Rem<Other2>,

§

type Output = Tuple<<First1 as Rem<First2>>::Output, <Other1 as Rem<Other2>>::Output>

The resulting type after applying the % operator.
source§

fn rem(self, rhs: Tuple<First2, Other2>) -> Self::Output

Performs the % operation. Read more
source§

impl<First1, Other1, First2, Other2> RemAssign<Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: RemAssign<First2>, Other1: RemAssign<Other2>,

source§

fn rem_assign(&mut self, rhs: Tuple<First2, Other2>)

Performs the %= operation. Read more
source§

impl<First, Other> Rotatable for Tuple<First, Other>
where Other: TupleLike, Self: Popable,

§

type RotLeftOutput = <Other as TupleLike>::PushBackOutput<First>

The type of tuple generated by left rorating the elements of the tuple.
§

type RotRightOutput = Tuple<<Tuple<First, Other> as Popable>::PopBackElement, <Tuple<First, Other> as Popable>::PopBackOutput>

The type of tuple generated by right rotating the elements of the tuple.
source§

fn rot_l(self) -> Self::RotLeftOutput

Left rotates the elements of the tuple. Read more
source§

fn rot_r(self) -> Self::RotRightOutput

Right rotates the elements of the tuple. Read more
source§

impl<First, Other> Search<First, Searched> for Tuple<First, Other>
where Other: TupleLike,

§

type TakeRemainder = Other

The type of the remainder of the tuple after taking out the searched element.
source§

fn take(self) -> (First, Self::TakeRemainder)

Take out the searched element, and get the remainder of tuple. Read more
source§

fn ref_of(&self) -> &First

Get an immutable reference of the searched element. Read more
source§

fn mut_of(&mut self) -> &mut First

Get a mutable reference of the searched element. Read more
source§

impl<First, Other, T, Result> Search<T, Searching<Result>> for Tuple<First, Other>
where Other: TupleLike + Search<T, Result>,

§

type TakeRemainder = Tuple<First, <Other as Search<T, Result>>::TakeRemainder>

The type of the remainder of the tuple after taking out the searched element.
source§

fn take(self) -> (T, Self::TakeRemainder)

Take out the searched element, and get the remainder of tuple. Read more
source§

fn ref_of(&self) -> &T

Get an immutable reference of the searched element. Read more
source§

fn mut_of(&mut self) -> &mut T

Get a mutable reference of the searched element. Read more
source§

impl<First1, Other1, First2, Other2> Shl<Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: Shl<First2>, Other1: Shl<Other2>,

§

type Output = Tuple<<First1 as Shl<First2>>::Output, <Other1 as Shl<Other2>>::Output>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: Tuple<First2, Other2>) -> Self::Output

Performs the << operation. Read more
source§

impl<First1, Other1, First2, Other2> ShlAssign<Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: ShlAssign<First2>, Other1: ShlAssign<Other2>,

source§

fn shl_assign(&mut self, rhs: Tuple<First2, Other2>)

Performs the <<= operation. Read more
source§

impl<First1, Other1, First2, Other2> Shr<Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: Shr<First2>, Other1: Shr<Other2>,

§

type Output = Tuple<<First1 as Shr<First2>>::Output, <Other1 as Shr<Other2>>::Output>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: Tuple<First2, Other2>) -> Self::Output

Performs the >> operation. Read more
source§

impl<First1, Other1, First2, Other2> ShrAssign<Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: ShrAssign<First2>, Other1: ShrAssign<Other2>,

source§

fn shr_assign(&mut self, rhs: Tuple<First2, Other2>)

Performs the >>= operation. Read more
source§

impl<First1, Other1, First2, Other2> Sub<Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: Sub<First2>, Other1: Sub<Other2>,

§

type Output = Tuple<<First1 as Sub<First2>>::Output, <Other1 as Sub<Other2>>::Output>

The resulting type after applying the - operator.
source§

fn sub(self, rhs: Tuple<First2, Other2>) -> Self::Output

Performs the - operation. Read more
source§

impl<First1, Other1, First2, Other2> SubAssign<Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: SubAssign<First2>, Other1: SubAssign<Other2>,

source§

fn sub_assign(&mut self, rhs: Tuple<First2, Other2>)

Performs the -= operation. Read more
source§

impl<T> ToArray<T> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

§

type Array = [T; 32]

The primitive array type to generate.
source§

fn to_array(self) -> Self::Array

Converts the tuple to the primitive array.
source§

impl<T> ToArray<T> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

§

type Array = [T; 31]

The primitive array type to generate.
source§

fn to_array(self) -> Self::Array

Converts the tuple to the primitive array.
source§

impl<T> ToArray<T> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

§

type Array = [T; 30]

The primitive array type to generate.
source§

fn to_array(self) -> Self::Array

Converts the tuple to the primitive array.
source§

impl<T> ToArray<T> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

§

type Array = [T; 29]

The primitive array type to generate.
source§

fn to_array(self) -> Self::Array

Converts the tuple to the primitive array.
source§

impl<T> ToArray<T> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>>>>>>>>>>>>>>

§

type Array = [T; 28]

The primitive array type to generate.
source§

fn to_array(self) -> Self::Array

Converts the tuple to the primitive array.
source§

impl<T> ToArray<T> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>>>>>>>>>>>>>

§

type Array = [T; 27]

The primitive array type to generate.
source§

fn to_array(self) -> Self::Array

Converts the tuple to the primitive array.
source§

impl<T> ToArray<T> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>>>>>>>>>>>>

§

type Array = [T; 26]

The primitive array type to generate.
source§

fn to_array(self) -> Self::Array

Converts the tuple to the primitive array.
source§

impl<T> ToArray<T> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>>>>>>>>>>>

§

type Array = [T; 25]

The primitive array type to generate.
source§

fn to_array(self) -> Self::Array

Converts the tuple to the primitive array.
source§

impl<T> ToArray<T> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>>>>>>>>>>

§

type Array = [T; 24]

The primitive array type to generate.
source§

fn to_array(self) -> Self::Array

Converts the tuple to the primitive array.
source§

impl<T> ToArray<T> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>>>>>>>>>

§

type Array = [T; 23]

The primitive array type to generate.
source§

fn to_array(self) -> Self::Array

Converts the tuple to the primitive array.
source§

impl<T> ToArray<T> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>>>>>>>>

§

type Array = [T; 22]

The primitive array type to generate.
source§

fn to_array(self) -> Self::Array

Converts the tuple to the primitive array.
source§

impl<T> ToArray<T> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>>>>>>>

§

type Array = [T; 21]

The primitive array type to generate.
source§

fn to_array(self) -> Self::Array

Converts the tuple to the primitive array.
source§

impl<T> ToArray<T> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>>>>>>

§

type Array = [T; 20]

The primitive array type to generate.
source§

fn to_array(self) -> Self::Array

Converts the tuple to the primitive array.
source§

impl<T> ToArray<T> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>>>>>

§

type Array = [T; 19]

The primitive array type to generate.
source§

fn to_array(self) -> Self::Array

Converts the tuple to the primitive array.
source§

impl<T> ToArray<T> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>>>>

§

type Array = [T; 18]

The primitive array type to generate.
source§

fn to_array(self) -> Self::Array

Converts the tuple to the primitive array.
source§

impl<T> ToArray<T> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>>>

§

type Array = [T; 17]

The primitive array type to generate.
source§

fn to_array(self) -> Self::Array

Converts the tuple to the primitive array.
source§

impl<T> ToArray<T> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>>

§

type Array = [T; 16]

The primitive array type to generate.
source§

fn to_array(self) -> Self::Array

Converts the tuple to the primitive array.
source§

impl<T> ToArray<T> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>>

§

type Array = [T; 15]

The primitive array type to generate.
source§

fn to_array(self) -> Self::Array

Converts the tuple to the primitive array.
source§

impl<T> ToArray<T> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>>

§

type Array = [T; 14]

The primitive array type to generate.
source§

fn to_array(self) -> Self::Array

Converts the tuple to the primitive array.
source§

impl<T> ToArray<T> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>>

§

type Array = [T; 13]

The primitive array type to generate.
source§

fn to_array(self) -> Self::Array

Converts the tuple to the primitive array.
source§

impl<T> ToArray<T> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>>

§

type Array = [T; 12]

The primitive array type to generate.
source§

fn to_array(self) -> Self::Array

Converts the tuple to the primitive array.
source§

impl<T> ToArray<T> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>>

§

type Array = [T; 11]

The primitive array type to generate.
source§

fn to_array(self) -> Self::Array

Converts the tuple to the primitive array.
source§

impl<T> ToArray<T> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>>

§

type Array = [T; 10]

The primitive array type to generate.
source§

fn to_array(self) -> Self::Array

Converts the tuple to the primitive array.
source§

impl<T> ToArray<T> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>>

§

type Array = [T; 9]

The primitive array type to generate.
source§

fn to_array(self) -> Self::Array

Converts the tuple to the primitive array.
source§

impl<T> ToArray<T> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>>

§

type Array = [T; 8]

The primitive array type to generate.
source§

fn to_array(self) -> Self::Array

Converts the tuple to the primitive array.
source§

impl<T> ToArray<T> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>>

§

type Array = [T; 7]

The primitive array type to generate.
source§

fn to_array(self) -> Self::Array

Converts the tuple to the primitive array.
source§

impl<T> ToArray<T> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>>

§

type Array = [T; 6]

The primitive array type to generate.
source§

fn to_array(self) -> Self::Array

Converts the tuple to the primitive array.
source§

impl<T> ToArray<T> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>>

§

type Array = [T; 5]

The primitive array type to generate.
source§

fn to_array(self) -> Self::Array

Converts the tuple to the primitive array.
source§

impl<T> ToArray<T> for Tuple<T, Tuple<T, Tuple<T, Tuple<T, Unit>>>>

§

type Array = [T; 4]

The primitive array type to generate.
source§

fn to_array(self) -> Self::Array

Converts the tuple to the primitive array.
source§

impl<T> ToArray<T> for Tuple<T, Tuple<T, Tuple<T, Unit>>>

§

type Array = [T; 3]

The primitive array type to generate.
source§

fn to_array(self) -> Self::Array

Converts the tuple to the primitive array.
source§

impl<T> ToArray<T> for Tuple<T, Tuple<T, Unit>>

§

type Array = [T; 2]

The primitive array type to generate.
source§

fn to_array(self) -> Self::Array

Converts the tuple to the primitive array.
source§

impl<T> ToArray<T> for Tuple<T, Unit>

§

type Array = [T; 1]

The primitive array type to generate.
source§

fn to_array(self) -> Self::Array

Converts the tuple to the primitive array.
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31> ToPrimitive for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Tuple<T15, Tuple<T16, Tuple<T17, Tuple<T18, Tuple<T19, Tuple<T20, Tuple<T21, Tuple<T22, Tuple<T23, Tuple<T24, Tuple<T25, Tuple<T26, Tuple<T27, Tuple<T28, Tuple<T29, Tuple<T30, Tuple<T31, Unit>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

§

type Primitive = (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31)

The primitive tuple type containing the same number and order of elements.
source§

fn primitive(self) -> Self::Primitive

Converts the tuple to the primitive tuple. Read more
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30> ToPrimitive for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Tuple<T15, Tuple<T16, Tuple<T17, Tuple<T18, Tuple<T19, Tuple<T20, Tuple<T21, Tuple<T22, Tuple<T23, Tuple<T24, Tuple<T25, Tuple<T26, Tuple<T27, Tuple<T28, Tuple<T29, Tuple<T30, Unit>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

§

type Primitive = (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30)

The primitive tuple type containing the same number and order of elements.
source§

fn primitive(self) -> Self::Primitive

Converts the tuple to the primitive tuple. Read more
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29> ToPrimitive for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Tuple<T15, Tuple<T16, Tuple<T17, Tuple<T18, Tuple<T19, Tuple<T20, Tuple<T21, Tuple<T22, Tuple<T23, Tuple<T24, Tuple<T25, Tuple<T26, Tuple<T27, Tuple<T28, Tuple<T29, Unit>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

§

type Primitive = (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29)

The primitive tuple type containing the same number and order of elements.
source§

fn primitive(self) -> Self::Primitive

Converts the tuple to the primitive tuple. Read more
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28> ToPrimitive for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Tuple<T15, Tuple<T16, Tuple<T17, Tuple<T18, Tuple<T19, Tuple<T20, Tuple<T21, Tuple<T22, Tuple<T23, Tuple<T24, Tuple<T25, Tuple<T26, Tuple<T27, Tuple<T28, Unit>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

§

type Primitive = (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28)

The primitive tuple type containing the same number and order of elements.
source§

fn primitive(self) -> Self::Primitive

Converts the tuple to the primitive tuple. Read more
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27> ToPrimitive for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Tuple<T15, Tuple<T16, Tuple<T17, Tuple<T18, Tuple<T19, Tuple<T20, Tuple<T21, Tuple<T22, Tuple<T23, Tuple<T24, Tuple<T25, Tuple<T26, Tuple<T27, Unit>>>>>>>>>>>>>>>>>>>>>>>>>>>>

§

type Primitive = (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27)

The primitive tuple type containing the same number and order of elements.
source§

fn primitive(self) -> Self::Primitive

Converts the tuple to the primitive tuple. Read more
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26> ToPrimitive for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Tuple<T15, Tuple<T16, Tuple<T17, Tuple<T18, Tuple<T19, Tuple<T20, Tuple<T21, Tuple<T22, Tuple<T23, Tuple<T24, Tuple<T25, Tuple<T26, Unit>>>>>>>>>>>>>>>>>>>>>>>>>>>

§

type Primitive = (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26)

The primitive tuple type containing the same number and order of elements.
source§

fn primitive(self) -> Self::Primitive

Converts the tuple to the primitive tuple. Read more
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25> ToPrimitive for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Tuple<T15, Tuple<T16, Tuple<T17, Tuple<T18, Tuple<T19, Tuple<T20, Tuple<T21, Tuple<T22, Tuple<T23, Tuple<T24, Tuple<T25, Unit>>>>>>>>>>>>>>>>>>>>>>>>>>

§

type Primitive = (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25)

The primitive tuple type containing the same number and order of elements.
source§

fn primitive(self) -> Self::Primitive

Converts the tuple to the primitive tuple. Read more
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24> ToPrimitive for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Tuple<T15, Tuple<T16, Tuple<T17, Tuple<T18, Tuple<T19, Tuple<T20, Tuple<T21, Tuple<T22, Tuple<T23, Tuple<T24, Unit>>>>>>>>>>>>>>>>>>>>>>>>>

§

type Primitive = (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24)

The primitive tuple type containing the same number and order of elements.
source§

fn primitive(self) -> Self::Primitive

Converts the tuple to the primitive tuple. Read more
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23> ToPrimitive for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Tuple<T15, Tuple<T16, Tuple<T17, Tuple<T18, Tuple<T19, Tuple<T20, Tuple<T21, Tuple<T22, Tuple<T23, Unit>>>>>>>>>>>>>>>>>>>>>>>>

§

type Primitive = (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23)

The primitive tuple type containing the same number and order of elements.
source§

fn primitive(self) -> Self::Primitive

Converts the tuple to the primitive tuple. Read more
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22> ToPrimitive for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Tuple<T15, Tuple<T16, Tuple<T17, Tuple<T18, Tuple<T19, Tuple<T20, Tuple<T21, Tuple<T22, Unit>>>>>>>>>>>>>>>>>>>>>>>

§

type Primitive = (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22)

The primitive tuple type containing the same number and order of elements.
source§

fn primitive(self) -> Self::Primitive

Converts the tuple to the primitive tuple. Read more
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21> ToPrimitive for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Tuple<T15, Tuple<T16, Tuple<T17, Tuple<T18, Tuple<T19, Tuple<T20, Tuple<T21, Unit>>>>>>>>>>>>>>>>>>>>>>

§

type Primitive = (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21)

The primitive tuple type containing the same number and order of elements.
source§

fn primitive(self) -> Self::Primitive

Converts the tuple to the primitive tuple. Read more
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20> ToPrimitive for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Tuple<T15, Tuple<T16, Tuple<T17, Tuple<T18, Tuple<T19, Tuple<T20, Unit>>>>>>>>>>>>>>>>>>>>>

§

type Primitive = (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20)

The primitive tuple type containing the same number and order of elements.
source§

fn primitive(self) -> Self::Primitive

Converts the tuple to the primitive tuple. Read more
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19> ToPrimitive for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Tuple<T15, Tuple<T16, Tuple<T17, Tuple<T18, Tuple<T19, Unit>>>>>>>>>>>>>>>>>>>>

§

type Primitive = (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19)

The primitive tuple type containing the same number and order of elements.
source§

fn primitive(self) -> Self::Primitive

Converts the tuple to the primitive tuple. Read more
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18> ToPrimitive for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Tuple<T15, Tuple<T16, Tuple<T17, Tuple<T18, Unit>>>>>>>>>>>>>>>>>>>

§

type Primitive = (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18)

The primitive tuple type containing the same number and order of elements.
source§

fn primitive(self) -> Self::Primitive

Converts the tuple to the primitive tuple. Read more
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17> ToPrimitive for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Tuple<T15, Tuple<T16, Tuple<T17, Unit>>>>>>>>>>>>>>>>>>

§

type Primitive = (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17)

The primitive tuple type containing the same number and order of elements.
source§

fn primitive(self) -> Self::Primitive

Converts the tuple to the primitive tuple. Read more
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> ToPrimitive for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Tuple<T15, Tuple<T16, Unit>>>>>>>>>>>>>>>>>

§

type Primitive = (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16)

The primitive tuple type containing the same number and order of elements.
source§

fn primitive(self) -> Self::Primitive

Converts the tuple to the primitive tuple. Read more
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> ToPrimitive for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Tuple<T15, Unit>>>>>>>>>>>>>>>>

§

type Primitive = (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)

The primitive tuple type containing the same number and order of elements.
source§

fn primitive(self) -> Self::Primitive

Converts the tuple to the primitive tuple. Read more
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> ToPrimitive for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Tuple<T14, Unit>>>>>>>>>>>>>>>

§

type Primitive = (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14)

The primitive tuple type containing the same number and order of elements.
source§

fn primitive(self) -> Self::Primitive

Converts the tuple to the primitive tuple. Read more
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> ToPrimitive for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Tuple<T13, Unit>>>>>>>>>>>>>>

§

type Primitive = (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13)

The primitive tuple type containing the same number and order of elements.
source§

fn primitive(self) -> Self::Primitive

Converts the tuple to the primitive tuple. Read more
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> ToPrimitive for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Tuple<T12, Unit>>>>>>>>>>>>>

§

type Primitive = (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)

The primitive tuple type containing the same number and order of elements.
source§

fn primitive(self) -> Self::Primitive

Converts the tuple to the primitive tuple. Read more
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> ToPrimitive for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Tuple<T11, Unit>>>>>>>>>>>>

§

type Primitive = (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)

The primitive tuple type containing the same number and order of elements.
source§

fn primitive(self) -> Self::Primitive

Converts the tuple to the primitive tuple. Read more
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> ToPrimitive for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Tuple<T10, Unit>>>>>>>>>>>

§

type Primitive = (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)

The primitive tuple type containing the same number and order of elements.
source§

fn primitive(self) -> Self::Primitive

Converts the tuple to the primitive tuple. Read more
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9> ToPrimitive for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Tuple<T9, Unit>>>>>>>>>>

§

type Primitive = (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9)

The primitive tuple type containing the same number and order of elements.
source§

fn primitive(self) -> Self::Primitive

Converts the tuple to the primitive tuple. Read more
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8> ToPrimitive for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Tuple<T8, Unit>>>>>>>>>

§

type Primitive = (T0, T1, T2, T3, T4, T5, T6, T7, T8)

The primitive tuple type containing the same number and order of elements.
source§

fn primitive(self) -> Self::Primitive

Converts the tuple to the primitive tuple. Read more
source§

impl<T0, T1, T2, T3, T4, T5, T6, T7> ToPrimitive for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Tuple<T7, Unit>>>>>>>>

§

type Primitive = (T0, T1, T2, T3, T4, T5, T6, T7)

The primitive tuple type containing the same number and order of elements.
source§

fn primitive(self) -> Self::Primitive

Converts the tuple to the primitive tuple. Read more
source§

impl<T0, T1, T2, T3, T4, T5, T6> ToPrimitive for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Tuple<T6, Unit>>>>>>>

§

type Primitive = (T0, T1, T2, T3, T4, T5, T6)

The primitive tuple type containing the same number and order of elements.
source§

fn primitive(self) -> Self::Primitive

Converts the tuple to the primitive tuple. Read more
source§

impl<T0, T1, T2, T3, T4, T5> ToPrimitive for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Tuple<T5, Unit>>>>>>

§

type Primitive = (T0, T1, T2, T3, T4, T5)

The primitive tuple type containing the same number and order of elements.
source§

fn primitive(self) -> Self::Primitive

Converts the tuple to the primitive tuple. Read more
source§

impl<T0, T1, T2, T3, T4> ToPrimitive for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Tuple<T4, Unit>>>>>

§

type Primitive = (T0, T1, T2, T3, T4)

The primitive tuple type containing the same number and order of elements.
source§

fn primitive(self) -> Self::Primitive

Converts the tuple to the primitive tuple. Read more
source§

impl<T0, T1, T2, T3> ToPrimitive for Tuple<T0, Tuple<T1, Tuple<T2, Tuple<T3, Unit>>>>

§

type Primitive = (T0, T1, T2, T3)

The primitive tuple type containing the same number and order of elements.
source§

fn primitive(self) -> Self::Primitive

Converts the tuple to the primitive tuple. Read more
source§

impl<T0, T1, T2> ToPrimitive for Tuple<T0, Tuple<T1, Tuple<T2, Unit>>>

§

type Primitive = (T0, T1, T2)

The primitive tuple type containing the same number and order of elements.
source§

fn primitive(self) -> Self::Primitive

Converts the tuple to the primitive tuple. Read more
source§

impl<T0, T1> ToPrimitive for Tuple<T0, Tuple<T1, Unit>>

§

type Primitive = (T0, T1)

The primitive tuple type containing the same number and order of elements.
source§

fn primitive(self) -> Self::Primitive

Converts the tuple to the primitive tuple. Read more
source§

impl<T0> ToPrimitive for Tuple<T0, Unit>

§

type Primitive = (T0,)

The primitive tuple type containing the same number and order of elements.
source§

fn primitive(self) -> Self::Primitive

Converts the tuple to the primitive tuple. Read more
source§

impl<First, Other> TupleLike for Tuple<First, Other>
where Other: TupleLike,

§

type AsRefOutput<'a> = Tuple<&'a First, <Other as TupleLike>::AsRefOutput<'a>> where Self: 'a

The type of tuple containing immutable references to all elements of the tuple.
§

type AsMutOutput<'a> = Tuple<&'a mut First, <Other as TupleLike>::AsMutOutput<'a>> where Self: 'a

The type of tuple containing mutable references to all elements of the tuple.
§

type PushFrontOutput<T> = Tuple<T, Tuple<First, Other>>

The type of tuple generated by pushing an element to the front of the tuple.
§

type PushBackOutput<T> = Tuple<First, <Other as TupleLike>::PushBackOutput<T>>

The type of tuple generated by pushing an element to the back of the tuple.
§

type RevOutput = <<Other as TupleLike>::RevOutput as TupleLike>::PushBackOutput<First>

The type of tuple generated by reversing the tuple.
§

type JoinOutput<T> = Tuple<First, <Other as TupleLike>::JoinOutput<T>> where T: TupleLike

The type of tuple generated by joining two tuples.
§

type ToSomeOutput = Tuple<Option<First>, <Other as TupleLike>::ToSomeOutput>

The type of tuple after wrapping all elements into Option.
§

type ToOkOutput<E> = Tuple<Result<First, E>, <Other as TupleLike>::ToOkOutput<E>>

The type of tuple after wrapping all elements into Result.
source§

const LEN: usize = _

The number of elements in the tuple.
source§

fn as_ref(&self) -> Self::AsRefOutput<'_>

Generate a tuple containing immutable references to all elements of the tuple. Read more
source§

fn as_mut(&mut self) -> Self::AsMutOutput<'_>

Generate a tuple containing mutable reference to all elements of the tuple. Read more
source§

fn push<T>(self, value: T) -> Self::PushBackOutput<T>

Push an element to the back of the tuple. Read more
source§

fn push_front<T>(self, value: T) -> Self::PushFrontOutput<T>

Push an element to the front of the tuple. Read more
source§

fn push_back<T>(self, value: T) -> Self::PushBackOutput<T>

Push an element to the back of the tuple. Same as push().
source§

fn rev(self) -> Self::RevOutput

Reverse elements of the tuple. Read more
source§

fn join<T>(self, value: T) -> Self::JoinOutput<T>
where T: TupleLike,

Join two tuples. Read more
source§

fn to_some(self) -> Self::ToSomeOutput

Convert a tuple!(a, b, c ...) to tuple!(Some(a), Some(b), Some(c) ...). Read more
source§

fn to_ok<E>(self) -> Self::ToOkOutput<E>

Convert a tuple!(a, b, c ...) to tuple!(Ok(a), Ok(b), Ok(c) ...). Read more
source§

fn len(&self) -> usize

Returns the number of elements in the tuple. MUST always return LEN. Read more
source§

impl<First, Other> Unwrap for Tuple<First, Other>
where Other: TupleLike + Unwrap, First: Unwrap,

§

type Output = Tuple<<First as Unwrap>::Output, <Other as Unwrap>::Output>

Type of the contained value.
source§

fn unwrap(self) -> Self::Output

Get the contained value. Read more
source§

fn has_value(&self) -> bool

Check if self contains a value. Read more
source§

impl<First, Other> UnwrapOrDefault for Tuple<First, Other>
where Other: TupleLike + UnwrapOrDefault, First: UnwrapOrDefault,

§

type Output = Tuple<<First as UnwrapOrDefault>::Output, <Other as UnwrapOrDefault>::Output>

Type of the contained value.
source§

fn unwrap_or_default(self) -> Self::Output

Get the contained value, or the default value if self does not contain a value. Read more
source§

impl<First: Copy, Other: Copy> Copy for Tuple<First, Other>

source§

impl<First: Eq, Other: Eq> Eq for Tuple<First, Other>

source§

impl<First, Other> StructuralPartialEq for Tuple<First, Other>

Auto Trait Implementations§

§

impl<First, Other> RefUnwindSafe for Tuple<First, Other>
where First: RefUnwindSafe, Other: RefUnwindSafe,

§

impl<First, Other> Send for Tuple<First, Other>
where First: Send, Other: Send,

§

impl<First, Other> Sync for Tuple<First, Other>
where First: Sync, Other: Sync,

§

impl<First, Other> Unpin for Tuple<First, Other>
where First: Unpin, Other: Unpin,

§

impl<First, Other> UnwindSafe for Tuple<First, Other>
where First: UnwindSafe, Other: UnwindSafe,

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

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

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.