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 methods of all Tuple types and Unit type. Check out TupleLike’s documentation page to see exactly what APIs are available.

§Build a tuple

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

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

Use ; to indicate repeated elements:

use tuplez::tuple;
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::tuple;

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::{Tuple, Unit};

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::Tuple;

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 annotate the complete tuple type explicitly. At this point, you can use the tuple_t! macro to generate it:

use tuplez::{tuple, tuple_t};

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::{tuple, tuple_t};

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

Sometimes, you may want to know the exact type of a tuple variable, so that you can call an associated method of this tuple type, such as, Default::default(). However, the signature of this type can be very long and complex, and you may not want to write it out completely via tuple_t!.

Here’s a little trick that might help:

use tuplez::tuple;

fn default_by<T: Default>(_: &T) -> T {
    T::default()
}

let tup = tuple!([1, 2, 3], tuple!("hello".to_string(), 3.14), 8);
let tup2 = default_by(&tup);
assert_eq!(tup2, tuple!([0; 3], tuple!(String::new(), 0.0), 0));

§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::{get, tuple};

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::{get, tuple};

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::{tuple, TupleLike};

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 Poppable, and all Tuples are Poppable:

use tuplez::{tuple, TupleLike};

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 a `Unit`

The take! macro can take out an element by its index or type:

use tuplez::{take, tuple};

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

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

let (element, remainder) = take!(tup; &str);
assert_eq!(element, "hello");
assert_eq!(remainder, tuple!(1, 3.14, [1, 2, 3]));

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::{split_at, tuple};

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!());

§Get subsequences

You can get a subsequence of a tuple via the subseq() method:

use tuplez::{tuple, TupleLike, tuple_t};

let tup = tuple!(12, "hello", 24, 3.14, true);
let subseq: tuple_t!(&str, bool) = tup.subseq();
assert_eq!(subseq, tuple!("hello", true));

// Two candidates available: `(12, true)` or `(24, true)`.
// let subseq: tuple_t!(i32, bool) = tup.subseq();

// No candidates available.
// `(true, "hello")` cannot be a candidate, since its element order is
// different from the supersequence.
// let subseq: tuple_t!(bool, &str) = tup.subseq();

// Although `24` is also `i32`, but only `(12, "hello")` is a candidate.
let subseq: tuple_t!(i32, &str) = tup.subseq();
assert_eq!(subseq, tuple!(12, "hello"));

// It's OK to pick all `i32`s since there is only one candidate.
let subseq: tuple_t!(i32, i32) = tup.subseq();
assert_eq!(subseq, tuple!(12, 24));

You can also get a continuous subsequence via the con_subseq(), it may do somethings that subseq() cannot do:

use tuplez::{tuple, TupleLike, tuple_t};

let tup = tuple!(12, "hello", 24, true, false);

// For `subseq`, 4 candidates available:
//      `(12, true)`,
//      `(12, false)`,
//      `(24, true)`,
//      `(24, false)`,
// so this cannot be compiled.
// let subseq: tuple_t!(i32, bool) = tup.subseq();

// But for `con_subseq`,only `(24, true)` is a candidate.
let subseq: tuple_t!(i32, bool) = tup.con_subseq();
assert_eq!(subseq, tuple!(24, true));

There are also many methods about subsequence: subseq_ref(), subseq_mut(), swap_subseq(), replace_subseq(), con_subseq_ref(), con_subseq_mut(), swap_con_subseq(), replace_con_subseq(). Please refer to their own documentation.

§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::tuple;

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::tuple;

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

If the number of elements on both sides is not equal, then the excess will be retained as is:

use tuplez::tuple;

let x = tuple!(10, "hello".to_string(), 3.14, vec![1, 2]);
let y = tuple!(5, " world");
assert_eq!(x + y, tuple!(15, "hello world".to_string(), 3.14, vec![1, 2]));

§Traverse tuples

You can traverse tuples by foreach().

Call foreach() on a tuple requires a mapper implementing Mapper as the parameter. Check its documentation page for examples.

However, here are two ways you can quickly build a mapper.

§Traverse tuples by element types

The mapper! macro helps you build a mapper that traverses tuples according to their element types.

For example:

use tuplez::{mapper, tuple, TupleLike};

let tup = tuple!(1, "hello", 3.14).foreach(mapper! {
    |x: i32| -> i64 { x as i64 }
    |x: f32| -> String { x.to_string() }
    <'a> |x: &'a str| -> &'a [u8] { x.as_bytes() }
});
assert_eq!(tup, tuple!(1i64, b"hello" as &[u8], "3.14".to_string()));

§Traverse tuples in order of their elements

You can create a new tuple with the same number of elements, whose elements are all callable objects that accepts an element and returns another value (FnOnce(T) -> U), then, you can use that tuple as a mapper.

use tuplez::{tuple, TupleLike};

let tup = tuple!(1, 2, 3);
let result = tup.foreach(
    tuple!(
        |x| x as f32,
        |x: i32| x.to_string(),
        |x: i32| Some(x),
    )
);
assert_eq!(result, tuple!(1.0, "2".to_string(), Some(3)));

§Fold tuples

You can fold tuples by fold().

Call fold() on a tuple requires a folder implementing Folder as the parameter. Check its documentation page for examples.

However, here are two ways you can quickly build a folder.

§Fold tuples by element types

The folder! macro helps you build a folder that folds tuples according to their element types.

For example:

use tuplez::{folder, tuple, TupleLike};

let tup = tuple!(Some(1), "2", Some(3.0));
let result = tup.fold(
    folder! { String; // Type of `acc` of all closures must be the same and annotated at the front
        |acc, x: &str| { acc + &x.to_string() }
        <T: ToString> |acc, x: Option<T>| { acc + &x.unwrap().to_string() }
    },
    String::new(),
);
assert_eq!(result, "123".to_string());

§Fold tuples in order of their elements

You can create a new tuple with the same number of elements, whose elements are all callable objects that accepts the accumulation value and an element and returns new accumulation value (FnOnce(Acc, T) -> Acc), then, you can use that tuple as a folder.

For example:

use tuplez::{tuple, TupleLike};

let tup = tuple!(1, "2", 3.0);
let result = tup.fold(
    tuple!(
        |acc, x| (acc + x) as f64,
        |acc: f64, x: &str| acc.to_string() + x,
        |acc: String, x| acc.parse::<i32>().unwrap() + x as i32,
    ),  // Type of `acc` of each closure is the return type of the previous closure.
    0,
);
assert_eq!(result, 15);

§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::{ToPrimitive, tuple, Tuple, tuple_t};

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 tuples cannot be converted 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::{ToArray, tuple, tuple_t};

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.

Trait Implementations§

source§

impl<'a, 'b, First1, Other1, First2, Other2> Add<&'a Tuple<First2, Other2>> for &'b Tuple<First1, Other1>

§

type Output = Tuple<<&'b First1 as Add<&'a First2>>::Output, <&'b Other1 as Add<&'a Other2>>::Output>

The resulting type after applying the + operator.
source§

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

Performs the + operation. Read more
source§

impl<'a, First1, Other1, First2, Other2> Add<&'a Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: Add<&'a First2>, Other1: Add<&'a Other2> + TupleLike, Other2: TupleLike,

§

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

The resulting type after applying the + operator.
source§

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

Performs the + operation. Read more
source§

impl<First, Other> Add<&Unit> for &Tuple<First, Other>
where Tuple<First, Other>: Clone, Other: TupleLike,

§

type Output = Tuple<First, Other>

The resulting type after applying the + operator.
source§

fn add(self, _: &Unit) -> Self::Output

Performs the + operation. Read more
source§

impl<First, Other> Add<&Unit> for Tuple<First, Other>
where Other: TupleLike,

§

type Output = Tuple<First, Other>

The resulting type after applying the + operator.
source§

fn add(self, _: &Unit) -> Self::Output

Performs the + operation. Read more
source§

impl<'a, First1, Other1, First2, Other2> Add<Tuple<First2, Other2>> for &'a Tuple<First1, Other1>
where &'a First1: Add<First2>, &'a Other1: Add<Other2>, Other1: TupleLike, Other2: TupleLike,

§

type Output = Tuple<<&'a First1 as Add<First2>>::Output, <&'a 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> Add<Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: Add<First2>, Other1: Add<Other2> + TupleLike, Other2: TupleLike,

§

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<First, Other> Add<Unit> for &Tuple<First, Other>
where Tuple<First, Other>: Clone, Other: TupleLike,

§

type Output = Tuple<First, Other>

The resulting type after applying the + operator.
source§

fn add(self, _: Unit) -> Self::Output

Performs the + operation. Read more
source§

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

§

type Output = Tuple<First, Other>

The resulting type after applying the + operator.
source§

fn add(self, _: Unit) -> Self::Output

Performs the + operation. Read more
source§

impl<'a, First1, Other1, First2, Other2> AddAssign<&'a Tuple<First2, Other2>> for Tuple<First1, Other1>

source§

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

Performs the += operation. Read more
source§

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

source§

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

Performs the += operation. Read more
source§

impl<First, Other> AsDeref for Tuple<First, Other>
where First: Deref, Other: AsDeref,

§

type AsDerefOutput<'a> = Tuple<&'a <First as Deref>::Target, <Other as AsDeref>::AsDerefOutput<'a>> where Self: 'a

The type of the output tuple.
source§

fn as_deref(&self) -> Self::AsDerefOutput<'_>

Convert from &Tuple<T0, T1, T2, ...> to Tuple<&T0::Target, &T1::Target, &T2::Target, ..> while all the elements of the tuple implement Deref. Read more
source§

impl<First, Other> AsDerefMut for Tuple<First, Other>
where First: DerefMut, Other: AsDerefMut,

§

type AsDerefMutOutput<'a> = Tuple<&'a mut <First as Deref>::Target, <Other as AsDerefMut>::AsDerefMutOutput<'a>> where Self: 'a

The type of the output tuple.
source§

fn as_deref_mut(&mut self) -> Self::AsDerefMutOutput<'_>

Convert from &mut Tuple<T0, T1, T2, ...> to Tuple<&mut T0::Target, &mut T1::Target, &mut T2::Target, ..> while all the elements of the tuple implement DerefMut. Read more
source§

impl<'a, 'b, First1, Other1, First2, Other2> BitAnd<&'a Tuple<First2, Other2>> for &'b Tuple<First1, Other1>

§

type Output = Tuple<<&'b First1 as BitAnd<&'a First2>>::Output, <&'b Other1 as BitAnd<&'a Other2>>::Output>

The resulting type after applying the & operator.
source§

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

Performs the & operation. Read more
source§

impl<'a, First1, Other1, First2, Other2> BitAnd<&'a Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: BitAnd<&'a First2>, Other1: BitAnd<&'a Other2> + TupleLike, Other2: TupleLike,

§

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

The resulting type after applying the & operator.
source§

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

Performs the & operation. Read more
source§

impl<First, Other> BitAnd<&Unit> for &Tuple<First, Other>
where Tuple<First, Other>: Clone, Other: TupleLike,

§

type Output = Tuple<First, Other>

The resulting type after applying the & operator.
source§

fn bitand(self, _: &Unit) -> Self::Output

Performs the & operation. Read more
source§

impl<First, Other> BitAnd<&Unit> for Tuple<First, Other>
where Other: TupleLike,

§

type Output = Tuple<First, Other>

The resulting type after applying the & operator.
source§

fn bitand(self, _: &Unit) -> Self::Output

Performs the & operation. Read more
source§

impl<'a, First1, Other1, First2, Other2> BitAnd<Tuple<First2, Other2>> for &'a Tuple<First1, Other1>
where &'a First1: BitAnd<First2>, &'a Other1: BitAnd<Other2>, Other1: TupleLike, Other2: TupleLike,

§

type Output = Tuple<<&'a First1 as BitAnd<First2>>::Output, <&'a 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> BitAnd<Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: BitAnd<First2>, Other1: BitAnd<Other2> + TupleLike, Other2: TupleLike,

§

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<First, Other> BitAnd<Unit> for &Tuple<First, Other>
where Tuple<First, Other>: Clone, Other: TupleLike,

§

type Output = Tuple<First, Other>

The resulting type after applying the & operator.
source§

fn bitand(self, _: Unit) -> Self::Output

Performs the & operation. Read more
source§

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

§

type Output = Tuple<First, Other>

The resulting type after applying the & operator.
source§

fn bitand(self, _: Unit) -> Self::Output

Performs the & operation. Read more
source§

impl<'a, First1, Other1, First2, Other2> BitAndAssign<&'a Tuple<First2, Other2>> for Tuple<First1, Other1>

source§

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

Performs the &= operation. Read more
source§

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

source§

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

Performs the &= operation. Read more
source§

impl<'a, 'b, First1, Other1, First2, Other2> BitOr<&'a Tuple<First2, Other2>> for &'b Tuple<First1, Other1>

§

type Output = Tuple<<&'b First1 as BitOr<&'a First2>>::Output, <&'b Other1 as BitOr<&'a Other2>>::Output>

The resulting type after applying the | operator.
source§

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

Performs the | operation. Read more
source§

impl<'a, First1, Other1, First2, Other2> BitOr<&'a Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: BitOr<&'a First2>, Other1: BitOr<&'a Other2> + TupleLike, Other2: TupleLike,

§

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

The resulting type after applying the | operator.
source§

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

Performs the | operation. Read more
source§

impl<First, Other> BitOr<&Unit> for &Tuple<First, Other>
where Tuple<First, Other>: Clone, Other: TupleLike,

§

type Output = Tuple<First, Other>

The resulting type after applying the | operator.
source§

fn bitor(self, _: &Unit) -> Self::Output

Performs the | operation. Read more
source§

impl<First, Other> BitOr<&Unit> for Tuple<First, Other>
where Other: TupleLike,

§

type Output = Tuple<First, Other>

The resulting type after applying the | operator.
source§

fn bitor(self, _: &Unit) -> Self::Output

Performs the | operation. Read more
source§

impl<'a, First1, Other1, First2, Other2> BitOr<Tuple<First2, Other2>> for &'a Tuple<First1, Other1>
where &'a First1: BitOr<First2>, &'a Other1: BitOr<Other2>, Other1: TupleLike, Other2: TupleLike,

§

type Output = Tuple<<&'a First1 as BitOr<First2>>::Output, <&'a 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> BitOr<Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: BitOr<First2>, Other1: BitOr<Other2> + TupleLike, Other2: TupleLike,

§

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<First, Other> BitOr<Unit> for &Tuple<First, Other>
where Tuple<First, Other>: Clone, Other: TupleLike,

§

type Output = Tuple<First, Other>

The resulting type after applying the | operator.
source§

fn bitor(self, _: Unit) -> Self::Output

Performs the | operation. Read more
source§

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

§

type Output = Tuple<First, Other>

The resulting type after applying the | operator.
source§

fn bitor(self, _: Unit) -> Self::Output

Performs the | operation. Read more
source§

impl<'a, First1, Other1, First2, Other2> BitOrAssign<&'a Tuple<First2, Other2>> for Tuple<First1, Other1>

source§

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

Performs the |= operation. Read more
source§

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

source§

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

Performs the |= operation. Read more
source§

impl<'a, 'b, First1, Other1, First2, Other2> BitXor<&'a Tuple<First2, Other2>> for &'b Tuple<First1, Other1>

§

type Output = Tuple<<&'b First1 as BitXor<&'a First2>>::Output, <&'b Other1 as BitXor<&'a Other2>>::Output>

The resulting type after applying the ^ operator.
source§

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

Performs the ^ operation. Read more
source§

impl<'a, First1, Other1, First2, Other2> BitXor<&'a Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: BitXor<&'a First2>, Other1: BitXor<&'a Other2> + TupleLike, Other2: TupleLike,

§

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

The resulting type after applying the ^ operator.
source§

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

Performs the ^ operation. Read more
source§

impl<First, Other> BitXor<&Unit> for &Tuple<First, Other>
where Tuple<First, Other>: Clone, Other: TupleLike,

§

type Output = Tuple<First, Other>

The resulting type after applying the ^ operator.
source§

fn bitxor(self, _: &Unit) -> Self::Output

Performs the ^ operation. Read more
source§

impl<First, Other> BitXor<&Unit> for Tuple<First, Other>
where Other: TupleLike,

§

type Output = Tuple<First, Other>

The resulting type after applying the ^ operator.
source§

fn bitxor(self, _: &Unit) -> Self::Output

Performs the ^ operation. Read more
source§

impl<'a, First1, Other1, First2, Other2> BitXor<Tuple<First2, Other2>> for &'a Tuple<First1, Other1>
where &'a First1: BitXor<First2>, &'a Other1: BitXor<Other2>, Other1: TupleLike, Other2: TupleLike,

§

type Output = Tuple<<&'a First1 as BitXor<First2>>::Output, <&'a 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> BitXor<Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: BitXor<First2>, Other1: BitXor<Other2> + TupleLike, Other2: TupleLike,

§

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<First, Other> BitXor<Unit> for &Tuple<First, Other>
where Tuple<First, Other>: Clone, Other: TupleLike,

§

type Output = Tuple<First, Other>

The resulting type after applying the ^ operator.
source§

fn bitxor(self, _: Unit) -> Self::Output

Performs the ^ operation. Read more
source§

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

§

type Output = Tuple<First, Other>

The resulting type after applying the ^ operator.
source§

fn bitxor(self, _: Unit) -> Self::Output

Performs the ^ operation. Read more
source§

impl<'a, First1, Other1, First2, Other2> BitXorAssign<&'a Tuple<First2, Other2>> for Tuple<First1, Other1>

source§

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

Performs the ^= operation. Read more
source§

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

source§

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

Performs the ^= operation. Read more
source§

impl<'a, T, R, First, Other> Callable<&'a mut T, PhantomMut> for Tuple<First, Other>
where First: Fn(&mut T) -> R, R: 'a, Other: Callable<&'a mut T, PhantomMut>,

§

type Output = Tuple<R, <Other as Callable<&'a mut T, PhantomMut>>::Output>

Type of the tuple collecting results of each call.
source§

fn call(&self, rhs: &'a mut T) -> Self::Output

When all elements of the tuple implement Fn(T) for a specific T, call them once in sequence. Read more
source§

impl<T, R, First, Other> Callable<T, PhantomClone> for Tuple<First, Other>
where T: Clone, First: Fn(T) -> R, Other: Callable<T, PhantomClone>,

§

type Output = Tuple<R, <Other as Callable<T, PhantomClone>>::Output>

Type of the tuple collecting results of each call.
source§

fn call(&self, rhs: T) -> Self::Output

When all elements of the tuple implement Fn(T) for a specific T, call them once in sequence. 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, Other> Cloned for Tuple<&First, Other>
where First: Clone, Other: Cloned,

§

type ClonedOutput = Tuple<First, <Other as Cloned>::ClonedOutput>

The type of the output tuple.
source§

fn cloned(&self) -> Self::ClonedOutput

If the elements of the tuple are all references, clone these elements to a new tuple. Read more
source§

impl<First, Other> Cloned for Tuple<&mut First, Other>
where First: Clone, Other: Cloned,

§

type ClonedOutput = Tuple<First, <Other as Cloned>::ClonedOutput>

The type of the output tuple.
source§

fn cloned(&self) -> Self::ClonedOutput

If the elements of the tuple are all references, clone these elements to a new tuple. Read more
source§

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

§

type CombineOutput = Tuple<<First1 as TupleLike>::JoinOutput<First2>, <Other1 as Combinable<Other2>>::CombineOutput>

The type of the output generated by combine two tuples.
source§

fn combine(self, rhs: Tuple<First2, Other2>) -> Self::CombineOutput

If two tuples have the same number of elements, and their elements are both tuples, join their tuple elements one-to-one. Read more
source§

impl<First, Other, T, I> ConSubseq<T, Unused<I>> for Tuple<First, Other>
where T: TupleLike, Other: ConSubseq<T, I>,

source§

fn con_subseq(self) -> T

Take out a contiguous subsequence. Read more
source§

fn con_subseq_ref(&self) -> <T as TupleLike>::AsRefOutput<'_>

Similar to con_subseq(), but all its elements are immutable references to the supersequence’s elements. Read more
source§

fn con_subseq_mut(&mut self) -> <T as TupleLike>::AsMutOutput<'_>

Similar to con_subseq(), but all its elements are mutable references to the supersequence’s elements. Read more
source§

fn swap_con_subseq(&mut self, subseq: &mut T)

Swap elements with a contiguous subsequence. Read more
source§

fn replace_con_subseq(&mut self, subseq: Seq) -> Seq

Replace elements with a contiguous subsequence. Read more
source§

impl<First, Other, I> ConSubseq<Tuple<First, Unit>, Used<I>> for Tuple<First, Other>
where Other: ConSubseq<Unit, I>,

source§

fn con_subseq(self) -> Tuple<First, Unit>

Take out a contiguous subsequence. Read more
source§

fn con_subseq_ref(&self) -> <Tuple<First, Unit> as TupleLike>::AsRefOutput<'_>

Similar to con_subseq(), but all its elements are immutable references to the supersequence’s elements. Read more
source§

fn con_subseq_mut( &mut self, ) -> <Tuple<First, Unit> as TupleLike>::AsMutOutput<'_>

Similar to con_subseq(), but all its elements are mutable references to the supersequence’s elements. Read more
source§

fn swap_con_subseq(&mut self, subseq: &mut Tuple<First, Unit>)

Swap elements with a contiguous subsequence. Read more
source§

fn replace_con_subseq(&mut self, subseq: Seq) -> Seq

Replace elements with a contiguous subsequence. Read more
source§

impl<First1, First2, Other1, Other2, I> ConSubseq<Tuple<First1, Tuple<First2, Other2>>, Used<I>> for Tuple<First1, Other1>
where Other1: ConSubseq<Tuple<First2, Other2>, Used<I>>, Other2: TupleLike,

source§

fn con_subseq(self) -> Tuple<First1, Tuple<First2, Other2>>

Take out a contiguous subsequence. Read more
source§

fn con_subseq_ref( &self, ) -> <Tuple<First1, Tuple<First2, Other2>> as TupleLike>::AsRefOutput<'_>

Similar to con_subseq(), but all its elements are immutable references to the supersequence’s elements. Read more
source§

fn con_subseq_mut( &mut self, ) -> <Tuple<First1, Tuple<First2, Other2>> as TupleLike>::AsMutOutput<'_>

Similar to con_subseq(), but all its elements are mutable references to the supersequence’s elements. Read more
source§

fn swap_con_subseq(&mut self, subseq: &mut Tuple<First1, Tuple<First2, Other2>>)

Swap elements with a contiguous subsequence. Read more
source§

fn replace_con_subseq(&mut self, subseq: Seq) -> Seq

Replace elements with a contiguous subsequence. Read more
source§

impl<First, Other, T, F, I> ConSubseqMapReplace<T, F, Unused<I>> for Tuple<First, Other>
where T: TupleLike, Other: ConSubseqMapReplace<T, F, I>,

§

type MapReplaceOutput = Tuple<First, <Other as ConSubseqMapReplace<T, F, I>>::MapReplaceOutput>

The type of tuple that replace elements of a specific contiguous subsequence to another sequence that may be of different element types.
source§

fn map_replace_con_subseq(self, f: F) -> Self::MapReplaceOutput

Replace elements of specific contiguous subsequence with another sequence that may be of different element types. Read more
source§

impl<First, Other, F, I> ConSubseqMapReplace<Tuple<First, Unit>, F, Used<I>> for Tuple<First, Other>
where Other: ConSubseqMapReplace<Unit, <F as Mapper<First>>::NextMapper, I>, F: Mapper<First>,

§

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

The type of tuple that replace elements of a specific contiguous subsequence to another sequence that may be of different element types.
source§

fn map_replace_con_subseq(self, f: F) -> Self::MapReplaceOutput

Replace elements of specific contiguous subsequence with another sequence that may be of different element types. Read more
source§

impl<First1, First2, Other1, Other2, F, I> ConSubseqMapReplace<Tuple<First1, Tuple<First2, Other2>>, F, Used<I>> for Tuple<First1, Other1>
where Other1: ConSubseqMapReplace<Tuple<First2, Other2>, <F as Mapper<First1>>::NextMapper, Used<I>>, Other2: TupleLike, F: Mapper<First1>,

§

type MapReplaceOutput = Tuple<<F as Mapper<First1>>::Output, <Other1 as ConSubseqMapReplace<Tuple<First2, Other2>, <F as Mapper<First1>>::NextMapper, Used<I>>>::MapReplaceOutput>

The type of tuple that replace elements of a specific contiguous subsequence to another sequence that may be of different element types.
source§

fn map_replace_con_subseq(self, f: F) -> Self::MapReplaceOutput

Replace elements of specific contiguous subsequence with another sequence that may be of different element types. Read more
source§

impl<First, Other> Copied for Tuple<&First, Other>
where First: Copy, Other: Copied,

§

type CopiedOutput = Tuple<First, <Other as Copied>::CopiedOutput>

The type of the output tuple.
source§

fn copied(&self) -> Self::CopiedOutput

If the elements of the tuple are all references, copy its elements to a new tuple. Read more
source§

impl<First, Other> Copied for Tuple<&mut First, Other>
where First: Copy, Other: Copied,

§

type CopiedOutput = Tuple<First, <Other as Copied>::CopiedOutput>

The type of the output tuple.
source§

fn copied(&self) -> Self::CopiedOutput

If the elements of the tuple are all references, copy its elements to a new tuple. 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<'de, First, Other> Deserialize<'de> for Tuple<First, Other>
where First: Deserialize<'de>, Other: Deserialize<'de>,

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl<'a, 'b, First1, Other1, First2, Other2> Div<&'a Tuple<First2, Other2>> for &'b Tuple<First1, Other1>

§

type Output = Tuple<<&'b First1 as Div<&'a First2>>::Output, <&'b Other1 as Div<&'a Other2>>::Output>

The resulting type after applying the / operator.
source§

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

Performs the / operation. Read more
source§

impl<'a, First1, Other1, First2, Other2> Div<&'a Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: Div<&'a First2>, Other1: Div<&'a Other2> + TupleLike, Other2: TupleLike,

§

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

The resulting type after applying the / operator.
source§

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

Performs the / operation. Read more
source§

impl<First, Other> Div<&Unit> for &Tuple<First, Other>
where Tuple<First, Other>: Clone, Other: TupleLike,

§

type Output = Tuple<First, Other>

The resulting type after applying the / operator.
source§

fn div(self, _: &Unit) -> Self::Output

Performs the / operation. Read more
source§

impl<First, Other> Div<&Unit> for Tuple<First, Other>
where Other: TupleLike,

§

type Output = Tuple<First, Other>

The resulting type after applying the / operator.
source§

fn div(self, _: &Unit) -> Self::Output

Performs the / operation. Read more
source§

impl<'a, First1, Other1, First2, Other2> Div<Tuple<First2, Other2>> for &'a Tuple<First1, Other1>
where &'a First1: Div<First2>, &'a Other1: Div<Other2>, Other1: TupleLike, Other2: TupleLike,

§

type Output = Tuple<<&'a First1 as Div<First2>>::Output, <&'a 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> Div<Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: Div<First2>, Other1: Div<Other2> + TupleLike, Other2: TupleLike,

§

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<First, Other> Div<Unit> for &Tuple<First, Other>
where Tuple<First, Other>: Clone, Other: TupleLike,

§

type Output = Tuple<First, Other>

The resulting type after applying the / operator.
source§

fn div(self, _: Unit) -> Self::Output

Performs the / operation. Read more
source§

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

§

type Output = Tuple<First, Other>

The resulting type after applying the / operator.
source§

fn div(self, _: Unit) -> Self::Output

Performs the / operation. Read more
source§

impl<'a, First1, Other1, First2, Other2> DivAssign<&'a Tuple<First2, Other2>> for Tuple<First1, Other1>

source§

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

Performs the /= operation. Read more
source§

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

source§

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

Performs the /= operation. Read more
source§

impl<'a, 'b, First1, Other1, First2, Other2> Dot<&'a Tuple<First2, Other2>> for &'b Tuple<First1, Other1>

§

type Output = <<&'b Other1 as Dot<&'a Other2>>::Output as Add<<&'b First1 as Mul<&'a First2>>::Output>>::Output

Output type of the dot product operation.
source§

fn dot(self, rhs: &'a Tuple<First2, Other2>) -> Self::Output

Performs the dot product operation.
source§

impl<'a, First1, Other1, First2, Other2> Dot<&'a Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: Mul<&'a First2>, Other1: Dot<&'a Other2> + TupleLike, Other2: TupleLike, <Other1 as Dot<&'a Other2>>::Output: Add<<First1 as Mul<&'a First2>>::Output>,

§

type Output = <<Other1 as Dot<&'a Other2>>::Output as Add<<First1 as Mul<&'a First2>>::Output>>::Output

Output type of the dot product operation.
source§

fn dot(self, rhs: &'a Tuple<First2, Other2>) -> Self::Output

Performs the dot product operation.
source§

impl<'a, First1, Other1, First2, Other2> Dot<Tuple<First2, Other2>> for &'a Tuple<First1, Other1>
where &'a First1: Mul<First2>, &'a Other1: Dot<Other2>, Other1: TupleLike, Other2: TupleLike, <&'a Other1 as Dot<Other2>>::Output: Add<<&'a First1 as Mul<First2>>::Output>,

§

type Output = <<&'a Other1 as Dot<Other2>>::Output as Add<<&'a First1 as Mul<First2>>::Output>>::Output

Output type of the dot product operation.
source§

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

Performs the dot product operation.
source§

impl<First1, Other1, First2, Other2> Dot<Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: Mul<First2>, Other1: Dot<Other2> + TupleLike, Other2: TupleLike, <Other1 as Dot<Other2>>::Output: Add<<First1 as Mul<First2>>::Output>,

§

type Output = <<Other1 as Dot<Other2>>::Output as Add<<First1 as Mul<First2>>::Output>>::Output

Output type of the dot product operation.
source§

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

Performs the dot product operation.
source§

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

§

type EnumerateOutput = Tuple<(usize, First), <Other as Enumerable>::EnumerateOutput>

The type of the output tuple.
source§

fn enumerate(self, from: usize) -> Self::EnumerateOutput

Convert from tuple!(x, y, z, ...) to tuple!((0, x), (1, y), (2, z), ...). Read more
source§

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

§

type ExtendFrontOutput = Tuple<<First1 as TupleLike>::PushFrontOutput<First2>, <Other1 as Extendable<Other2>>::ExtendFrontOutput>

The type of the output generated by pushing new elements to the front of tuple elements.
§

type ExtendBackOutput = Tuple<<First1 as TupleLike>::PushBackOutput<First2>, <Other1 as Extendable<Other2>>::ExtendBackOutput>

The type of the output generated by pushing new elements to the back of tuple elements.
source§

fn extend(self, rhs: Tuple<First2, Other2>) -> Self::ExtendBackOutput

If the elements of a tuple are all tuples, push an element to the back of each tuple element. Read more
source§

fn extend_front(self, rhs: Tuple<First2, Other2>) -> Self::ExtendFrontOutput

If the elements of a tuple are all tuples, push an element to the front of each tuple element. Read more
source§

fn extend_back(self, rhs: T) -> Self::ExtendBackOutput
where Self: Sized,

If the elements of a tuple are all tuples, push an element to the front of each tuple element. Same as extend(). Read more
source§

impl<F, Acc, First, Other> Foldable<F, Acc> for Tuple<First, Other>
where F: Folder<First, Acc>, Other: Foldable<F::NextFolder, F::Output>,

§

type Output = <Other as Foldable<<F as Folder<First, Acc>>::NextFolder, <F as Folder<First, Acc>>::Output>>::Output

The type of the output generated by folding the tuple.
source§

fn fold(self, f: F, acc: Acc) -> Self::Output

Fold the tuple. Read more
source§

impl<First, F, Out, FOthers, Acc> Folder<First, Acc> for Tuple<F, FOthers>
where F: FnOnce(Acc, First) -> Out,

§

type Output = Out

Output type of folding.
§

type NextFolder = FOthers

Type of next folder to be use.
source§

fn fold(self, acc: Acc, value: First) -> (Self::Output, Self::NextFolder)

Fold a value, return the output value and next folder.
source§

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

§

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

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

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

Traverse the tuple, 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([v0]: [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([v0, v1, v2, v3, v4, v5, v6, v7, v8, v9]: [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([v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10]: [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([v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11]: [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( [v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12]: [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( [v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13]: [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( [v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14]: [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( [v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15]: [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( [v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16]: [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( [v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17]: [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( [v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18]: [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([v0, v1]: [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( [v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19]: [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( [v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20]: [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( [v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21]: [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( [v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22]: [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( [v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23]: [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( [v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24]: [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( [v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25]: [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( [v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26]: [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( [v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27]: [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( [v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28]: [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([v0, v1, v2]: [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( [v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29]: [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( [v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30]: [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( [v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31]: [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([v0, v1, v2, v3]: [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([v0, v1, v2, v3, v4]: [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([v0, v1, v2, v3, v4, v5]: [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([v0, v1, v2, v3, v4, v5, v6]: [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([v0, v1, v2, v3, v4, v5, v6, v7]: [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([v0, v1, v2, v3, v4, v5, v6, v7, v8]: [T; 9]) -> Self

Converts to this type from the input type.
source§

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

source§

fn from((v0): (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((v0, v1): (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((v0, v1, v2): (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((v0, v1, v2, v3): (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((v0, v1, v2, v3, v4): (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((v0, v1, v2, v3, v4, v5): (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((v0, v1, v2, v3, v4, v5, v6): (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( (v0, v1, v2, v3, v4, v5, v6, v7): (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( (v0, v1, v2, v3, v4, v5, v6, v7, v8): (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( (v0, v1, v2, v3, v4, v5, v6, v7, v8, v9): (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( (v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10): (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( (v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11): (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( (v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12): (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( (v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13): (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( (v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14): (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( (v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15): (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( (v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16): (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( (v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17): (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§

fn from( (v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18): (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18), ) -> 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, 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§

fn from( (v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19): (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19), ) -> 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, 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§

fn from( (v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20): (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20), ) -> 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, 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§

fn from( (v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21): (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21), ) -> 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, 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§

fn from( (v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22): (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22), ) -> 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, 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§

fn from( (v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23): (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23), ) -> 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, 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§

fn from( (v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24): (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), ) -> 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, 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§

fn from( (v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25): (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), ) -> 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, 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§

fn from( (v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26): (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), ) -> 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, 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§

fn from( (v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27): (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), ) -> 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, 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§

fn from( (v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28): (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), ) -> 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, 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§

fn from( (v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29): (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), ) -> 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, 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§

fn from( (v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30): (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), ) -> 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, 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§

fn from( (v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31): (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), ) -> Self

Converts to this type from the input type.
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> HeadReplaceable<Tuple<First2, Other2>> for Tuple<First1, Other1>
where Other1: HeadReplaceable<Other2>, Other2: TupleLike,

§

type ReplaceOutput = Tuple<First2, <Other1 as HeadReplaceable<Other2>>::ReplaceOutput>

The type of the tuple after replacing its elements.
§

type Replaced = Tuple<First1, <Other1 as HeadReplaceable<Other2>>::Replaced>

The type of the tuple that collect all replaced elements.
source§

fn replace_head( self, rhs: Tuple<First2, Other2>, ) -> (Self::ReplaceOutput, Self::Replaced)

Replace the first N elements of the tuple with all elements of another tuple of N elements. Read more
source§

impl<'a, T, Other> IntoIterator for &'a Tuple<T, Other>
where Tuple<T, Other>: TupleLike, <Tuple<T, Other> as TupleLike>::AsRefOutput<'a>: ToArray<&'a T>,

§

type Item = &'a T

The type of the elements being iterated over.
§

type IntoIter = <<<Tuple<T, Other> as TupleLike>::AsRefOutput<'a> as ToArray<&'a T>>::Array as IntoIterator>::IntoIter

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, T, Other> IntoIterator for &'a mut Tuple<T, Other>
where Tuple<T, Other>: TupleLike, <Tuple<T, Other> as TupleLike>::AsMutOutput<'a>: ToArray<&'a mut T>,

§

type Item = &'a mut T

The type of the elements being iterated over.
§

type IntoIter = <<<Tuple<T, Other> as TupleLike>::AsMutOutput<'a> as ToArray<&'a mut T>>::Array as IntoIterator>::IntoIter

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<T, Other> IntoIterator for Tuple<T, Other>
where Tuple<T, Other>: ToArray<T>,

§

type Item = T

The type of the elements being iterated over.
§

type IntoIter = <<Tuple<T, Other> as ToArray<T>>::Array as IntoIterator>::IntoIter

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<First, F, Out, FOthers> Mapper<First> for Tuple<F, FOthers>
where F: FnOnce(First) -> Out, FOthers: TupleLike,

§

type Output = Out

Output type of mapping.
§

type NextMapper = FOthers

Type of next mapper to be use.
source§

fn map(self, value: First) -> (Self::Output, Self::NextMapper)

Map an element to another value.
source§

impl<'a, 'b, First1, Other1, First2, Other2> Mul<&'a Tuple<First2, Other2>> for &'b Tuple<First1, Other1>

§

type Output = Tuple<<&'b First1 as Mul<&'a First2>>::Output, <&'b Other1 as Mul<&'a Other2>>::Output>

The resulting type after applying the * operator.
source§

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

Performs the * operation. Read more
source§

impl<'a, First1, Other1, First2, Other2> Mul<&'a Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: Mul<&'a First2>, Other1: Mul<&'a Other2> + TupleLike, Other2: TupleLike,

§

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

The resulting type after applying the * operator.
source§

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

Performs the * operation. Read more
source§

impl<First, Other> Mul<&Unit> for &Tuple<First, Other>
where Tuple<First, Other>: Clone, Other: TupleLike,

§

type Output = Tuple<First, Other>

The resulting type after applying the * operator.
source§

fn mul(self, _: &Unit) -> Self::Output

Performs the * operation. Read more
source§

impl<First, Other> Mul<&Unit> for Tuple<First, Other>
where Other: TupleLike,

§

type Output = Tuple<First, Other>

The resulting type after applying the * operator.
source§

fn mul(self, _: &Unit) -> Self::Output

Performs the * operation. Read more
source§

impl<'a, First1, Other1, First2, Other2> Mul<Tuple<First2, Other2>> for &'a Tuple<First1, Other1>
where &'a First1: Mul<First2>, &'a Other1: Mul<Other2>, Other1: TupleLike, Other2: TupleLike,

§

type Output = Tuple<<&'a First1 as Mul<First2>>::Output, <&'a 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> Mul<Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: Mul<First2>, Other1: Mul<Other2> + TupleLike, Other2: TupleLike,

§

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<First, Other> Mul<Unit> for &Tuple<First, Other>
where Tuple<First, Other>: Clone, Other: TupleLike,

§

type Output = Tuple<First, Other>

The resulting type after applying the * operator.
source§

fn mul(self, _: Unit) -> Self::Output

Performs the * operation. Read more
source§

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

§

type Output = Tuple<First, Other>

The resulting type after applying the * operator.
source§

fn mul(self, _: Unit) -> Self::Output

Performs the * operation. Read more
source§

impl<'a, First1, Other1, First2, Other2> MulAssign<&'a Tuple<First2, Other2>> for Tuple<First1, Other1>

source§

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

Performs the *= operation. Read more
source§

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

source§

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

Performs the *= operation. Read more
source§

impl<'a, T, R, First, Other> MutCallable<&'a mut T, PhantomMut> for Tuple<First, Other>
where First: FnMut(&mut T) -> R, R: 'a, Other: MutCallable<&'a mut T, PhantomMut>,

§

type Output = Tuple<R, <Other as MutCallable<&'a mut T, PhantomMut>>::Output>

Type of the tuple collecting results of each call.
source§

fn call_mut(&mut self, rhs: &'a mut T) -> Self::Output

When all elements of the tuple implement FnMut(T) for a specific T, call them once in sequence. Read more
source§

impl<T, R, First, Other> MutCallable<T, PhantomClone> for Tuple<First, Other>
where T: Clone, First: FnMut(T) -> R, Other: MutCallable<T, PhantomClone>,

§

type Output = Tuple<R, <Other as MutCallable<T, PhantomClone>>::Output>

Type of the tuple collecting results of each call.
source§

fn call_mut(&mut self, rhs: T) -> Self::Output

When all elements of the tuple implement FnMut(T) for a specific T, call them once in sequence. Read more
source§

impl<'a, First, Other> Neg for &'a Tuple<First, Other>
where &'a First: Neg, &'a Other: Neg, Other: TupleLike,

§

type Output = Tuple<<&'a First as Neg>::Output, <&'a 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, Other> Neg for Tuple<First, Other>
where First: Neg, Other: Neg + TupleLike,

§

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<'a, First, Other> Not for &'a Tuple<First, Other>
where &'a First: Not, &'a Other: Not, Other: TupleLike,

§

type Output = Tuple<<&'a First as Not>::Output, <&'a 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, Other> Not for Tuple<First, Other>
where First: Not, Other: Not + TupleLike,

§

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<'a, T, R, First, Other> OnceCallable<&'a mut T, PhantomMut> for Tuple<First, Other>
where First: FnOnce(&mut T) -> R, R: 'a, Other: OnceCallable<&'a mut T, PhantomMut>,

§

type Output = Tuple<R, <Other as OnceCallable<&'a mut T, PhantomMut>>::Output>

Type of the tuple collecting results of each call.
source§

fn call_once(self, rhs: &'a mut T) -> Self::Output

When all elements of the tuple implement FnOnce(T) for a specific T, call them once in sequence. Read more
source§

impl<T, R, First, Other> OnceCallable<T, PhantomClone> for Tuple<First, Other>
where T: Clone, First: FnOnce(T) -> R, Other: OnceCallable<T, PhantomClone>,

§

type Output = Tuple<R, <Other as OnceCallable<T, PhantomClone>>::Output>

Type of the tuple collecting results of each call.
source§

fn call_once(self, rhs: T) -> Self::Output

When all elements of the tuple implement FnOnce(T) for a specific T, call them once in sequence. 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, Other> Owned for Tuple<&First, Other>
where First: ToOwned + ?Sized, Other: Owned,

§

type OwnedOutput = Tuple<<First as ToOwned>::Owned, <Other as Owned>::OwnedOutput>

Available on crate features std or alloc only.
The type of the output tuple.
source§

fn owned(&self) -> Self::OwnedOutput

Available on crate features std or alloc only.
If the elements of the tuple are all references, clone its elements to a new tuple. Read more
source§

impl<First, Other> Owned for Tuple<&mut First, Other>
where First: ToOwned + ?Sized, Other: Owned,

§

type OwnedOutput = Tuple<<First as ToOwned>::Owned, <Other as Owned>::OwnedOutput>

Available on crate features std or alloc only.
The type of the output tuple.
source§

fn owned(&self) -> Self::OwnedOutput

Available on crate features std or alloc only.
If the elements of the tuple are all references, clone its elements to a new tuple. 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> Poppable for Tuple<First, Other>
where Other: Poppable,

§

type PopFrontOutput = Other

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

type PopFrontElement = First

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

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

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

type PopBackElement = <Other as Poppable>::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::PopFrontElement)

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

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

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

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

§

type PopFrontOutput = Unit

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

type PopFrontElement = 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::PopFrontElement)

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

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

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

impl<'a, 'b, First1, Other1, First2, Other2> Rem<&'a Tuple<First2, Other2>> for &'b Tuple<First1, Other1>

§

type Output = Tuple<<&'b First1 as Rem<&'a First2>>::Output, <&'b Other1 as Rem<&'a Other2>>::Output>

The resulting type after applying the % operator.
source§

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

Performs the % operation. Read more
source§

impl<'a, First1, Other1, First2, Other2> Rem<&'a Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: Rem<&'a First2>, Other1: Rem<&'a Other2> + TupleLike, Other2: TupleLike,

§

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

The resulting type after applying the % operator.
source§

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

Performs the % operation. Read more
source§

impl<First, Other> Rem<&Unit> for &Tuple<First, Other>
where Tuple<First, Other>: Clone, Other: TupleLike,

§

type Output = Tuple<First, Other>

The resulting type after applying the % operator.
source§

fn rem(self, _: &Unit) -> Self::Output

Performs the % operation. Read more
source§

impl<First, Other> Rem<&Unit> for Tuple<First, Other>
where Other: TupleLike,

§

type Output = Tuple<First, Other>

The resulting type after applying the % operator.
source§

fn rem(self, _: &Unit) -> Self::Output

Performs the % operation. Read more
source§

impl<'a, First1, Other1, First2, Other2> Rem<Tuple<First2, Other2>> for &'a Tuple<First1, Other1>
where &'a First1: Rem<First2>, &'a Other1: Rem<Other2>, Other1: TupleLike, Other2: TupleLike,

§

type Output = Tuple<<&'a First1 as Rem<First2>>::Output, <&'a 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> Rem<Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: Rem<First2>, Other1: Rem<Other2> + TupleLike, Other2: TupleLike,

§

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<First, Other> Rem<Unit> for &Tuple<First, Other>
where Tuple<First, Other>: Clone, Other: TupleLike,

§

type Output = Tuple<First, Other>

The resulting type after applying the % operator.
source§

fn rem(self, _: Unit) -> Self::Output

Performs the % operation. Read more
source§

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

§

type Output = Tuple<First, Other>

The resulting type after applying the % operator.
source§

fn rem(self, _: Unit) -> Self::Output

Performs the % operation. Read more
source§

impl<'a, First1, Other1, First2, Other2> RemAssign<&'a Tuple<First2, Other2>> for Tuple<First1, Other1>

source§

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

Performs the %= operation. Read more
source§

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

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: Poppable,

§

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

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

type RotRightOutput = Tuple<<Tuple<First, Other> as Poppable>::PopBackElement, <Tuple<First, Other> as Poppable>::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, Complete> for Tuple<First, Other>
where Other: TupleLike,

§

type TakeRemainder = Other

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

type MapReplaceOutput<U> = Tuple<U, Other>

The type of tuple that replace one element to another value that may be of a different type.
source§

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

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

fn get_ref(&self) -> &First

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

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

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

fn map_replace<U, F>(self, f: F) -> Self::MapReplaceOutput<U>
where F: FnOnce(First) -> U,

Replace a specific element with another value that may be of a different type. Read more
source§

fn swap(&mut self, value: &mut T)

Swap a specific element of the same type with another value. Read more
source§

fn replace(&mut self, value: T) -> T

Replace a specific element of the same type with another value. Read more
source§

impl<First, Other, T, I> Search<T, Unused<I>> for Tuple<First, Other>
where Other: Search<T, I>,

§

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

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

type MapReplaceOutput<U> = Tuple<First, <Other as Search<T, I>>::MapReplaceOutput<U>>

The type of tuple that replace one element to another value that may be of a different type.
source§

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

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

fn get_ref(&self) -> &T

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

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

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

fn map_replace<U, F>(self, f: F) -> Self::MapReplaceOutput<U>
where F: FnOnce(T) -> U,

Replace a specific element with another value that may be of a different type. Read more
source§

fn swap(&mut self, value: &mut T)

Swap a specific element of the same type with another value. Read more
source§

fn replace(&mut self, value: T) -> T

Replace a specific element of the same type with another value. Read more
source§

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

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
source§

impl<'a, 'b, First1, Other1, First2, Other2> Shl<&'a Tuple<First2, Other2>> for &'b Tuple<First1, Other1>

§

type Output = Tuple<<&'b First1 as Shl<&'a First2>>::Output, <&'b Other1 as Shl<&'a Other2>>::Output>

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

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

Performs the << operation. Read more
source§

impl<'a, First1, Other1, First2, Other2> Shl<&'a Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: Shl<&'a First2>, Other1: Shl<&'a Other2> + TupleLike, Other2: TupleLike,

§

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

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

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

Performs the << operation. Read more
source§

impl<First, Other> Shl<&Unit> for &Tuple<First, Other>
where Tuple<First, Other>: Clone, Other: TupleLike,

§

type Output = Tuple<First, Other>

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

fn shl(self, _: &Unit) -> Self::Output

Performs the << operation. Read more
source§

impl<First, Other> Shl<&Unit> for Tuple<First, Other>
where Other: TupleLike,

§

type Output = Tuple<First, Other>

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

fn shl(self, _: &Unit) -> Self::Output

Performs the << operation. Read more
source§

impl<'a, First1, Other1, First2, Other2> Shl<Tuple<First2, Other2>> for &'a Tuple<First1, Other1>
where &'a First1: Shl<First2>, &'a Other1: Shl<Other2>, Other1: TupleLike, Other2: TupleLike,

§

type Output = Tuple<<&'a First1 as Shl<First2>>::Output, <&'a 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> Shl<Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: Shl<First2>, Other1: Shl<Other2> + TupleLike, Other2: TupleLike,

§

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<First, Other> Shl<Unit> for &Tuple<First, Other>
where Tuple<First, Other>: Clone, Other: TupleLike,

§

type Output = Tuple<First, Other>

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

fn shl(self, _: Unit) -> Self::Output

Performs the << operation. Read more
source§

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

§

type Output = Tuple<First, Other>

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

fn shl(self, _: Unit) -> Self::Output

Performs the << operation. Read more
source§

impl<'a, First1, Other1, First2, Other2> ShlAssign<&'a Tuple<First2, Other2>> for Tuple<First1, Other1>

source§

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

Performs the <<= operation. Read more
source§

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

source§

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

Performs the <<= operation. Read more
source§

impl<'a, 'b, First1, Other1, First2, Other2> Shr<&'a Tuple<First2, Other2>> for &'b Tuple<First1, Other1>

§

type Output = Tuple<<&'b First1 as Shr<&'a First2>>::Output, <&'b Other1 as Shr<&'a Other2>>::Output>

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

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

Performs the >> operation. Read more
source§

impl<'a, First1, Other1, First2, Other2> Shr<&'a Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: Shr<&'a First2>, Other1: Shr<&'a Other2> + TupleLike, Other2: TupleLike,

§

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

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

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

Performs the >> operation. Read more
source§

impl<First, Other> Shr<&Unit> for &Tuple<First, Other>
where Tuple<First, Other>: Clone, Other: TupleLike,

§

type Output = Tuple<First, Other>

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

fn shr(self, _: &Unit) -> Self::Output

Performs the >> operation. Read more
source§

impl<First, Other> Shr<&Unit> for Tuple<First, Other>
where Other: TupleLike,

§

type Output = Tuple<First, Other>

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

fn shr(self, _: &Unit) -> Self::Output

Performs the >> operation. Read more
source§

impl<'a, First1, Other1, First2, Other2> Shr<Tuple<First2, Other2>> for &'a Tuple<First1, Other1>
where &'a First1: Shr<First2>, &'a Other1: Shr<Other2>, Other1: TupleLike, Other2: TupleLike,

§

type Output = Tuple<<&'a First1 as Shr<First2>>::Output, <&'a 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> Shr<Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: Shr<First2>, Other1: Shr<Other2> + TupleLike, Other2: TupleLike,

§

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<First, Other> Shr<Unit> for &Tuple<First, Other>
where Tuple<First, Other>: Clone, Other: TupleLike,

§

type Output = Tuple<First, Other>

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

fn shr(self, _: Unit) -> Self::Output

Performs the >> operation. Read more
source§

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

§

type Output = Tuple<First, Other>

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

fn shr(self, _: Unit) -> Self::Output

Performs the >> operation. Read more
source§

impl<'a, First1, Other1, First2, Other2> ShrAssign<&'a Tuple<First2, Other2>> for Tuple<First1, Other1>

source§

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

Performs the >>= operation. Read more
source§

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

source§

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

Performs the >>= operation. Read more
source§

impl<First, Other> Shrinkable for Tuple<First, Other>
where First: Poppable, Other: Shrinkable,

§

type ShrinkFrontOutput = Tuple<<First as Poppable>::PopFrontOutput, <Other as Shrinkable>::ShrinkFrontOutput>

The type of the output generated by pop elements from the front of tuple elements.
§

type ShrinkFrontElements = Tuple<<First as Poppable>::PopFrontElement, <Other as Shrinkable>::ShrinkFrontElements>

The type of the tuple that collect popped elements from the front of tuple elements.
§

type ShrinkBackOutput = Tuple<<First as Poppable>::PopBackOutput, <Other as Shrinkable>::ShrinkBackOutput>

The type of the output generated by pop elements from the back of tuple elements.
§

type ShrinkBackElements = Tuple<<First as Poppable>::PopBackElement, <Other as Shrinkable>::ShrinkBackElements>

The type of the tuple that collect popped elements from the back of tuple elements.
source§

fn shrink(self) -> (Self::ShrinkBackOutput, Self::ShrinkBackElements)

If the elements of a tuple are all tuples, pop an element from the back of each tuple element. Read more
source§

fn shrink_front(self) -> (Self::ShrinkFrontOutput, Self::ShrinkFrontElements)

If the elements of a tuple are all tuples, pop an element from the front of each tuple element. Read more
source§

fn shrink_back(self) -> (Self::ShrinkBackOutput, Self::ShrinkBackElements)
where Self: Sized,

If the elements of a tuple are all tuples, pop an element from the back of each tuple element. Same as shrink(). Read more
source§

impl<'a, 'b, First1, Other1, First2, Other2> Sub<&'a Tuple<First2, Other2>> for &'b Tuple<First1, Other1>

§

type Output = Tuple<<&'b First1 as Sub<&'a First2>>::Output, <&'b Other1 as Sub<&'a Other2>>::Output>

The resulting type after applying the - operator.
source§

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

Performs the - operation. Read more
source§

impl<'a, First1, Other1, First2, Other2> Sub<&'a Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: Sub<&'a First2>, Other1: Sub<&'a Other2> + TupleLike, Other2: TupleLike,

§

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

The resulting type after applying the - operator.
source§

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

Performs the - operation. Read more
source§

impl<First, Other> Sub<&Unit> for &Tuple<First, Other>
where Tuple<First, Other>: Clone, Other: TupleLike,

§

type Output = Tuple<First, Other>

The resulting type after applying the - operator.
source§

fn sub(self, _: &Unit) -> Self::Output

Performs the - operation. Read more
source§

impl<First, Other> Sub<&Unit> for Tuple<First, Other>
where Other: TupleLike,

§

type Output = Tuple<First, Other>

The resulting type after applying the - operator.
source§

fn sub(self, _: &Unit) -> Self::Output

Performs the - operation. Read more
source§

impl<'a, First1, Other1, First2, Other2> Sub<Tuple<First2, Other2>> for &'a Tuple<First1, Other1>
where &'a First1: Sub<First2>, &'a Other1: Sub<Other2>, Other1: TupleLike, Other2: TupleLike,

§

type Output = Tuple<<&'a First1 as Sub<First2>>::Output, <&'a 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> Sub<Tuple<First2, Other2>> for Tuple<First1, Other1>
where First1: Sub<First2>, Other1: Sub<Other2> + TupleLike, Other2: TupleLike,

§

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<First, Other> Sub<Unit> for &Tuple<First, Other>
where Tuple<First, Other>: Clone, Other: TupleLike,

§

type Output = Tuple<First, Other>

The resulting type after applying the - operator.
source§

fn sub(self, _: Unit) -> Self::Output

Performs the - operation. Read more
source§

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

§

type Output = Tuple<First, Other>

The resulting type after applying the - operator.
source§

fn sub(self, _: Unit) -> Self::Output

Performs the - operation. Read more
source§

impl<'a, First1, Other1, First2, Other2> SubAssign<&'a Tuple<First2, Other2>> for Tuple<First1, Other1>

source§

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

Performs the -= operation. Read more
source§

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

source§

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

Performs the -= operation. Read more
source§

impl<First, Other, T, I> Subseq<T, Unused<I>> for Tuple<First, Other>
where T: TupleLike, Other: TupleLike + Subseq<T, I>,

source§

fn subseq(self) -> T

Take out a subsequence. Read more
source§

fn subseq_ref(&self) -> <T as TupleLike>::AsRefOutput<'_>

Similar to subseq(), but all its elements are immutable references to the supersequence’s elements. Read more
source§

fn subseq_mut(&mut self) -> <T as TupleLike>::AsMutOutput<'_>

Similar to subseq(), but all its elements are mutable references to the supersequence’s elements. Read more
source§

fn swap_subseq(&mut self, subseq: &mut T)

Swap elements with a subsequence. Read more
source§

fn replace_subseq(&mut self, subseq: Seq) -> Seq

Replace elements with a subsequence. Read more
source§

impl<First, Other1, Other2, I> Subseq<Tuple<First, Other2>, Used<I>> for Tuple<First, Other1>
where Other1: TupleLike + Subseq<Other2, I>, Other2: TupleLike,

source§

fn subseq(self) -> Tuple<First, Other2>

Take out a subsequence. Read more
source§

fn subseq_ref(&self) -> <Tuple<First, Other2> as TupleLike>::AsRefOutput<'_>

Similar to subseq(), but all its elements are immutable references to the supersequence’s elements. Read more
source§

fn subseq_mut(&mut self) -> <Tuple<First, Other2> as TupleLike>::AsMutOutput<'_>

Similar to subseq(), but all its elements are mutable references to the supersequence’s elements. Read more
source§

fn swap_subseq(&mut self, subseq: &mut Tuple<First, Other2>)

Swap elements with a subsequence. Read more
source§

fn replace_subseq(&mut self, subseq: Seq) -> Seq

Replace elements with a subsequence. Read more
source§

impl<First, Other, T, F, I> SubseqMapReplace<T, F, Unused<I>> for Tuple<First, Other>
where T: TupleLike, Other: TupleLike + SubseqMapReplace<T, F, I>,

§

type MapReplaceOutput = Tuple<First, <Other as SubseqMapReplace<T, F, I>>::MapReplaceOutput>

The type of tuple that replace elements of a specific subsequence to another sequence that may be of different element types.
source§

fn map_replace_subseq(self, f: F) -> Self::MapReplaceOutput

Replace elements of specific subsequence with another sequence that may be of different element types. Read more
source§

impl<First, Other1, Other2, F, I> SubseqMapReplace<Tuple<First, Other2>, F, Used<I>> for Tuple<First, Other1>
where Other1: TupleLike + SubseqMapReplace<Other2, <F as Mapper<First>>::NextMapper, I>, Other2: TupleLike, F: Mapper<First>,

§

type MapReplaceOutput = Tuple<<F as Mapper<First>>::Output, <Other1 as SubseqMapReplace<Other2, <F as Mapper<First>>::NextMapper, I>>::MapReplaceOutput>

The type of tuple that replace elements of a specific subsequence to another sequence that may be of different element types.
source§

fn map_replace_subseq(self, f: F) -> Self::MapReplaceOutput

Replace elements of specific subsequence with another sequence that may be of different element types. Read more
source§

impl<First, Other, T, I> TailReplaceable<T, Unused<I>> for Tuple<First, Other>
where T: TupleLike, Other: TailReplaceable<T, I>,

§

type ReplaceOutput = Tuple<First, <Other as TailReplaceable<T, I>>::ReplaceOutput>

The type of the tuple after replacing its elements.
§

type Replaced = <Other as TailReplaceable<T, I>>::Replaced

The type of the tuple that collect all replaced elements.
source§

fn replace_tail(self, rhs: T) -> (Self::ReplaceOutput, Self::Replaced)

Replace the last N elements of the tuple with all elements of another tuple of N elements. Read more
source§

impl<Pred, First, Other> TestAll<Pred> for Tuple<First, Other>
where for<'a> Pred: UnaryPredicate<'a, First>, for<'a> Other: TestAll<<Pred as UnaryPredicate<'a, First>>::NextUnaryPredicate>,

source§

fn all(&self, predicate: Pred) -> bool

Tests if every element of the tuple matches a predicate. Read more
source§

impl<Pred, First, Other> TestAny<Pred> for Tuple<First, Other>
where for<'a> Pred: UnaryPredicate<'a, First>, for<'a> Other: TestAny<<Pred as UnaryPredicate<'a, First>>::NextUnaryPredicate>,

source§

fn any(&self, predicate: Pred) -> bool

Tests if any element of the tuple matches a predicate. 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.
§

type Iter<'a> = IntoIter<&'a T, 32> where Self: 'a, T: 'a

Immutable element iterator type.
§

type IterMut<'a> = IntoIter<&'a mut T, 32> where Self: 'a, T: 'a

Mutable element iterator type.
source§

fn to_array(self) -> Self::Array

Convert from the tuple to the primitive array. Read more
source§

fn iter<'a>(&'a self) -> Self::Iter<'a>
where Self: 'a, T: 'a,

Get immutable element iterator. Read more
source§

fn iter_mut<'a>(&'a mut self) -> Self::IterMut<'a>
where Self: 'a, T: 'a,

Get mutable element iterator. 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, Unit>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

§

type Array = [T; 31]

The primitive array type to generate.
§

type Iter<'a> = IntoIter<&'a T, 31> where Self: 'a, T: 'a

Immutable element iterator type.
§

type IterMut<'a> = IntoIter<&'a mut T, 31> where Self: 'a, T: 'a

Mutable element iterator type.
source§

fn to_array(self) -> Self::Array

Convert from the tuple to the primitive array. Read more
source§

fn iter<'a>(&'a self) -> Self::Iter<'a>
where Self: 'a, T: 'a,

Get immutable element iterator. Read more
source§

fn iter_mut<'a>(&'a mut self) -> Self::IterMut<'a>
where Self: 'a, T: 'a,

Get mutable element iterator. 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, Unit>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

§

type Array = [T; 30]

The primitive array type to generate.
§

type Iter<'a> = IntoIter<&'a T, 30> where Self: 'a, T: 'a

Immutable element iterator type.
§

type IterMut<'a> = IntoIter<&'a mut T, 30> where Self: 'a, T: 'a

Mutable element iterator type.
source§

fn to_array(self) -> Self::Array

Convert from the tuple to the primitive array. Read more
source§

fn iter<'a>(&'a self) -> Self::Iter<'a>
where Self: 'a, T: 'a,

Get immutable element iterator. Read more
source§

fn iter_mut<'a>(&'a mut self) -> Self::IterMut<'a>
where Self: 'a, T: 'a,

Get mutable element iterator. 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, Unit>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

§

type Array = [T; 29]

The primitive array type to generate.
§

type Iter<'a> = IntoIter<&'a T, 29> where Self: 'a, T: 'a

Immutable element iterator type.
§

type IterMut<'a> = IntoIter<&'a mut T, 29> where Self: 'a, T: 'a

Mutable element iterator type.
source§

fn to_array(self) -> Self::Array

Convert from the tuple to the primitive array. Read more
source§

fn iter<'a>(&'a self) -> Self::Iter<'a>
where Self: 'a, T: 'a,

Get immutable element iterator. Read more
source§

fn iter_mut<'a>(&'a mut self) -> Self::IterMut<'a>
where Self: 'a, T: 'a,

Get mutable element iterator. 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, Unit>>>>>>>>>>>>>>>>>>>>>>>>>>>>

§

type Array = [T; 28]

The primitive array type to generate.
§

type Iter<'a> = IntoIter<&'a T, 28> where Self: 'a, T: 'a

Immutable element iterator type.
§

type IterMut<'a> = IntoIter<&'a mut T, 28> where Self: 'a, T: 'a

Mutable element iterator type.
source§

fn to_array(self) -> Self::Array

Convert from the tuple to the primitive array. Read more
source§

fn iter<'a>(&'a self) -> Self::Iter<'a>
where Self: 'a, T: 'a,

Get immutable element iterator. Read more
source§

fn iter_mut<'a>(&'a mut self) -> Self::IterMut<'a>
where Self: 'a, T: 'a,

Get mutable element iterator. 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, Unit>>>>>>>>>>>>>>>>>>>>>>>>>>>

§

type Array = [T; 27]

The primitive array type to generate.
§

type Iter<'a> = IntoIter<&'a T, 27> where Self: 'a, T: 'a

Immutable element iterator type.
§

type IterMut<'a> = IntoIter<&'a mut T, 27> where Self: 'a, T: 'a

Mutable element iterator type.
source§

fn to_array(self) -> Self::Array

Convert from the tuple to the primitive array. Read more
source§

fn iter<'a>(&'a self) -> Self::Iter<'a>
where Self: 'a, T: 'a,

Get immutable element iterator. Read more
source§

fn iter_mut<'a>(&'a mut self) -> Self::IterMut<'a>
where Self: 'a, T: 'a,

Get mutable element iterator. 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, Unit>>>>>>>>>>>>>>>>>>>>>>>>>>

§

type Array = [T; 26]

The primitive array type to generate.
§

type Iter<'a> = IntoIter<&'a T, 26> where Self: 'a, T: 'a

Immutable element iterator type.
§

type IterMut<'a> = IntoIter<&'a mut T, 26> where Self: 'a, T: 'a

Mutable element iterator type.
source§

fn to_array(self) -> Self::Array

Convert from the tuple to the primitive array. Read more
source§

fn iter<'a>(&'a self) -> Self::Iter<'a>
where Self: 'a, T: 'a,

Get immutable element iterator. Read more
source§

fn iter_mut<'a>(&'a mut self) -> Self::IterMut<'a>
where Self: 'a, T: 'a,

Get mutable element iterator. 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, Unit>>>>>>>>>>>>>>>>>>>>>>>>>

§

type Array = [T; 25]

The primitive array type to generate.
§

type Iter<'a> = IntoIter<&'a T, 25> where Self: 'a, T: 'a

Immutable element iterator type.
§

type IterMut<'a> = IntoIter<&'a mut T, 25> where Self: 'a, T: 'a

Mutable element iterator type.
source§

fn to_array(self) -> Self::Array

Convert from the tuple to the primitive array. Read more
source§

fn iter<'a>(&'a self) -> Self::Iter<'a>
where Self: 'a, T: 'a,

Get immutable element iterator. Read more
source§

fn iter_mut<'a>(&'a mut self) -> Self::IterMut<'a>
where Self: 'a, T: 'a,

Get mutable element iterator. 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, Unit>>>>>>>>>>>>>>>>>>>>>>>>

§

type Array = [T; 24]

The primitive array type to generate.
§

type Iter<'a> = IntoIter<&'a T, 24> where Self: 'a, T: 'a

Immutable element iterator type.
§

type IterMut<'a> = IntoIter<&'a mut T, 24> where Self: 'a, T: 'a

Mutable element iterator type.
source§

fn to_array(self) -> Self::Array

Convert from the tuple to the primitive array. Read more
source§

fn iter<'a>(&'a self) -> Self::Iter<'a>
where Self: 'a, T: 'a,

Get immutable element iterator. Read more
source§

fn iter_mut<'a>(&'a mut self) -> Self::IterMut<'a>
where Self: 'a, T: 'a,

Get mutable element iterator. 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, Unit>>>>>>>>>>>>>>>>>>>>>>>

§

type Array = [T; 23]

The primitive array type to generate.
§

type Iter<'a> = IntoIter<&'a T, 23> where Self: 'a, T: 'a

Immutable element iterator type.
§

type IterMut<'a> = IntoIter<&'a mut T, 23> where Self: 'a, T: 'a

Mutable element iterator type.
source§

fn to_array(self) -> Self::Array

Convert from the tuple to the primitive array. Read more
source§

fn iter<'a>(&'a self) -> Self::Iter<'a>
where Self: 'a, T: 'a,

Get immutable element iterator. Read more
source§

fn iter_mut<'a>(&'a mut self) -> Self::IterMut<'a>
where Self: 'a, T: 'a,

Get mutable element iterator. 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, Unit>>>>>>>>>>>>>>>>>>>>>>

§

type Array = [T; 22]

The primitive array type to generate.
§

type Iter<'a> = IntoIter<&'a T, 22> where Self: 'a, T: 'a

Immutable element iterator type.
§

type IterMut<'a> = IntoIter<&'a mut T, 22> where Self: 'a, T: 'a

Mutable element iterator type.
source§

fn to_array(self) -> Self::Array

Convert from the tuple to the primitive array. Read more
source§

fn iter<'a>(&'a self) -> Self::Iter<'a>
where Self: 'a, T: 'a,

Get immutable element iterator. Read more
source§

fn iter_mut<'a>(&'a mut self) -> Self::IterMut<'a>
where Self: 'a, T: 'a,

Get mutable element iterator. 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, Unit>>>>>>>>>>>>>>>>>>>>>

§

type Array = [T; 21]

The primitive array type to generate.
§

type Iter<'a> = IntoIter<&'a T, 21> where Self: 'a, T: 'a

Immutable element iterator type.
§

type IterMut<'a> = IntoIter<&'a mut T, 21> where Self: 'a, T: 'a

Mutable element iterator type.
source§

fn to_array(self) -> Self::Array

Convert from the tuple to the primitive array. Read more
source§

fn iter<'a>(&'a self) -> Self::Iter<'a>
where Self: 'a, T: 'a,

Get immutable element iterator. Read more
source§

fn iter_mut<'a>(&'a mut self) -> Self::IterMut<'a>
where Self: 'a, T: 'a,

Get mutable element iterator. 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, Unit>>>>>>>>>>>>>>>>>>>>

§

type Array = [T; 20]

The primitive array type to generate.
§

type Iter<'a> = IntoIter<&'a T, 20> where Self: 'a, T: 'a

Immutable element iterator type.
§

type IterMut<'a> = IntoIter<&'a mut T, 20> where Self: 'a, T: 'a

Mutable element iterator type.
source§

fn to_array(self) -> Self::Array

Convert from the tuple to the primitive array. Read more
source§

fn iter<'a>(&'a self) -> Self::Iter<'a>
where Self: 'a, T: 'a,

Get immutable element iterator. Read more
source§

fn iter_mut<'a>(&'a mut self) -> Self::IterMut<'a>
where Self: 'a, T: 'a,

Get mutable element iterator. 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, Unit>>>>>>>>>>>>>>>>>>>

§

type Array = [T; 19]

The primitive array type to generate.
§

type Iter<'a> = IntoIter<&'a T, 19> where Self: 'a, T: 'a

Immutable element iterator type.
§

type IterMut<'a> = IntoIter<&'a mut T, 19> where Self: 'a, T: 'a

Mutable element iterator type.
source§

fn to_array(self) -> Self::Array

Convert from the tuple to the primitive array. Read more
source§

fn iter<'a>(&'a self) -> Self::Iter<'a>
where Self: 'a, T: 'a,

Get immutable element iterator. Read more
source§

fn iter_mut<'a>(&'a mut self) -> Self::IterMut<'a>
where Self: 'a, T: 'a,

Get mutable element iterator. 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, Unit>>>>>>>>>>>>>>>>>>

§

type Array = [T; 18]

The primitive array type to generate.
§

type Iter<'a> = IntoIter<&'a T, 18> where Self: 'a, T: 'a

Immutable element iterator type.
§

type IterMut<'a> = IntoIter<&'a mut T, 18> where Self: 'a, T: 'a

Mutable element iterator type.
source§

fn to_array(self) -> Self::Array

Convert from the tuple to the primitive array. Read more
source§

fn iter<'a>(&'a self) -> Self::Iter<'a>
where Self: 'a, T: 'a,

Get immutable element iterator. Read more
source§

fn iter_mut<'a>(&'a mut self) -> Self::IterMut<'a>
where Self: 'a, T: 'a,

Get mutable element iterator. 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, Unit>>>>>>>>>>>>>>>>>

§

type Array = [T; 17]

The primitive array type to generate.
§

type Iter<'a> = IntoIter<&'a T, 17> where Self: 'a, T: 'a

Immutable element iterator type.
§

type IterMut<'a> = IntoIter<&'a mut T, 17> where Self: 'a, T: 'a

Mutable element iterator type.
source§

fn to_array(self) -> Self::Array

Convert from the tuple to the primitive array. Read more
source§

fn iter<'a>(&'a self) -> Self::Iter<'a>
where Self: 'a, T: 'a,

Get immutable element iterator. Read more
source§

fn iter_mut<'a>(&'a mut self) -> Self::IterMut<'a>
where Self: 'a, T: 'a,

Get mutable element iterator. 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, Unit>>>>>>>>>>>>>>>>

§

type Array = [T; 16]

The primitive array type to generate.
§

type Iter<'a> = IntoIter<&'a T, 16> where Self: 'a, T: 'a

Immutable element iterator type.
§

type IterMut<'a> = IntoIter<&'a mut T, 16> where Self: 'a, T: 'a

Mutable element iterator type.
source§

fn to_array(self) -> Self::Array

Convert from the tuple to the primitive array. Read more
source§

fn iter<'a>(&'a self) -> Self::Iter<'a>
where Self: 'a, T: 'a,

Get immutable element iterator. Read more
source§

fn iter_mut<'a>(&'a mut self) -> Self::IterMut<'a>
where Self: 'a, T: 'a,

Get mutable element iterator. 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, Unit>>>>>>>>>>>>>>>

§

type Array = [T; 15]

The primitive array type to generate.
§

type Iter<'a> = IntoIter<&'a T, 15> where Self: 'a, T: 'a

Immutable element iterator type.
§

type IterMut<'a> = IntoIter<&'a mut T, 15> where Self: 'a, T: 'a

Mutable element iterator type.
source§

fn to_array(self) -> Self::Array

Convert from the tuple to the primitive array. Read more
source§

fn iter<'a>(&'a self) -> Self::Iter<'a>
where Self: 'a, T: 'a,

Get immutable element iterator. Read more
source§

fn iter_mut<'a>(&'a mut self) -> Self::IterMut<'a>
where Self: 'a, T: 'a,

Get mutable element iterator. 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, Unit>>>>>>>>>>>>>>

§

type Array = [T; 14]

The primitive array type to generate.
§

type Iter<'a> = IntoIter<&'a T, 14> where Self: 'a, T: 'a

Immutable element iterator type.
§

type IterMut<'a> = IntoIter<&'a mut T, 14> where Self: 'a, T: 'a

Mutable element iterator type.
source§

fn to_array(self) -> Self::Array

Convert from the tuple to the primitive array. Read more
source§

fn iter<'a>(&'a self) -> Self::Iter<'a>
where Self: 'a, T: 'a,

Get immutable element iterator. Read more
source§

fn iter_mut<'a>(&'a mut self) -> Self::IterMut<'a>
where Self: 'a, T: 'a,

Get mutable element iterator. 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, Unit>>>>>>>>>>>>>

§

type Array = [T; 13]

The primitive array type to generate.
§

type Iter<'a> = IntoIter<&'a T, 13> where Self: 'a, T: 'a

Immutable element iterator type.
§

type IterMut<'a> = IntoIter<&'a mut T, 13> where Self: 'a, T: 'a

Mutable element iterator type.
source§

fn to_array(self) -> Self::Array

Convert from the tuple to the primitive array. Read more
source§

fn iter<'a>(&'a self) -> Self::Iter<'a>
where Self: 'a, T: 'a,

Get immutable element iterator. Read more
source§

fn iter_mut<'a>(&'a mut self) -> Self::IterMut<'a>
where Self: 'a, T: 'a,

Get mutable element iterator. 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, Unit>>>>>>>>>>>>

§

type Array = [T; 12]

The primitive array type to generate.
§

type Iter<'a> = IntoIter<&'a T, 12> where Self: 'a, T: 'a

Immutable element iterator type.
§

type IterMut<'a> = IntoIter<&'a mut T, 12> where Self: 'a, T: 'a

Mutable element iterator type.
source§

fn to_array(self) -> Self::Array

Convert from the tuple to the primitive array. Read more
source§

fn iter<'a>(&'a self) -> Self::Iter<'a>
where Self: 'a, T: 'a,

Get immutable element iterator. Read more
source§

fn iter_mut<'a>(&'a mut self) -> Self::IterMut<'a>
where Self: 'a, T: 'a,

Get mutable element iterator. 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, Unit>>>>>>>>>>>

§

type Array = [T; 11]

The primitive array type to generate.
§

type Iter<'a> = IntoIter<&'a T, 11> where Self: 'a, T: 'a

Immutable element iterator type.
§

type IterMut<'a> = IntoIter<&'a mut T, 11> where Self: 'a, T: 'a

Mutable element iterator type.
source§

fn to_array(self) -> Self::Array

Convert from the tuple to the primitive array. Read more
source§

fn iter<'a>(&'a self) -> Self::Iter<'a>
where Self: 'a, T: 'a,

Get immutable element iterator. Read more
source§

fn iter_mut<'a>(&'a mut self) -> Self::IterMut<'a>
where Self: 'a, T: 'a,

Get mutable element iterator. 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, Unit>>>>>>>>>>

§

type Array = [T; 10]

The primitive array type to generate.
§

type Iter<'a> = IntoIter<&'a T, 10> where Self: 'a, T: 'a

Immutable element iterator type.
§

type IterMut<'a> = IntoIter<&'a mut T, 10> where Self: 'a, T: 'a

Mutable element iterator type.
source§

fn to_array(self) -> Self::Array

Convert from the tuple to the primitive array. Read more
source§

fn iter<'a>(&'a self) -> Self::Iter<'a>
where Self: 'a, T: 'a,

Get immutable element iterator. Read more
source§

fn iter_mut<'a>(&'a mut self) -> Self::IterMut<'a>
where Self: 'a, T: 'a,

Get mutable element iterator. 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, Unit>>>>>>>>>

§

type Array = [T; 9]

The primitive array type to generate.
§

type Iter<'a> = IntoIter<&'a T, 9> where Self: 'a, T: 'a

Immutable element iterator type.
§

type IterMut<'a> = IntoIter<&'a mut T, 9> where Self: 'a, T: 'a

Mutable element iterator type.
source§

fn to_array(self) -> Self::Array

Convert from the tuple to the primitive array. Read more
source§

fn iter<'a>(&'a self) -> Self::Iter<'a>
where Self: 'a, T: 'a,

Get immutable element iterator. Read more
source§

fn iter_mut<'a>(&'a mut self) -> Self::IterMut<'a>
where Self: 'a, T: 'a,

Get mutable element iterator. Read more
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.
§

type Iter<'a> = IntoIter<&'a T, 8> where Self: 'a, T: 'a

Immutable element iterator type.
§

type IterMut<'a> = IntoIter<&'a mut T, 8> where Self: 'a, T: 'a

Mutable element iterator type.
source§

fn to_array(self) -> Self::Array

Convert from the tuple to the primitive array. Read more
source§

fn iter<'a>(&'a self) -> Self::Iter<'a>
where Self: 'a, T: 'a,

Get immutable element iterator. Read more
source§

fn iter_mut<'a>(&'a mut self) -> Self::IterMut<'a>
where Self: 'a, T: 'a,

Get mutable element iterator. Read more
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.
§

type Iter<'a> = IntoIter<&'a T, 7> where Self: 'a, T: 'a

Immutable element iterator type.
§

type IterMut<'a> = IntoIter<&'a mut T, 7> where Self: 'a, T: 'a

Mutable element iterator type.
source§

fn to_array(self) -> Self::Array

Convert from the tuple to the primitive array. Read more
source§

fn iter<'a>(&'a self) -> Self::Iter<'a>
where Self: 'a, T: 'a,

Get immutable element iterator. Read more
source§

fn iter_mut<'a>(&'a mut self) -> Self::IterMut<'a>
where Self: 'a, T: 'a,

Get mutable element iterator. Read more
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.
§

type Iter<'a> = IntoIter<&'a T, 6> where Self: 'a, T: 'a

Immutable element iterator type.
§

type IterMut<'a> = IntoIter<&'a mut T, 6> where Self: 'a, T: 'a

Mutable element iterator type.
source§

fn to_array(self) -> Self::Array

Convert from the tuple to the primitive array. Read more
source§

fn iter<'a>(&'a self) -> Self::Iter<'a>
where Self: 'a, T: 'a,

Get immutable element iterator. Read more
source§

fn iter_mut<'a>(&'a mut self) -> Self::IterMut<'a>
where Self: 'a, T: 'a,

Get mutable element iterator. Read more
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.
§

type Iter<'a> = IntoIter<&'a T, 5> where Self: 'a, T: 'a

Immutable element iterator type.
§

type IterMut<'a> = IntoIter<&'a mut T, 5> where Self: 'a, T: 'a

Mutable element iterator type.
source§

fn to_array(self) -> Self::Array

Convert from the tuple to the primitive array. Read more
source§

fn iter<'a>(&'a self) -> Self::Iter<'a>
where Self: 'a, T: 'a,

Get immutable element iterator. Read more
source§

fn iter_mut<'a>(&'a mut self) -> Self::IterMut<'a>
where Self: 'a, T: 'a,

Get mutable element iterator. Read more
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.
§

type Iter<'a> = IntoIter<&'a T, 4> where Self: 'a, T: 'a

Immutable element iterator type.
§

type IterMut<'a> = IntoIter<&'a mut T, 4> where Self: 'a, T: 'a

Mutable element iterator type.
source§

fn to_array(self) -> Self::Array

Convert from the tuple to the primitive array. Read more
source§

fn iter<'a>(&'a self) -> Self::Iter<'a>
where Self: 'a, T: 'a,

Get immutable element iterator. Read more
source§

fn iter_mut<'a>(&'a mut self) -> Self::IterMut<'a>
where Self: 'a, T: 'a,

Get mutable element iterator. Read more
source§

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

§

type Array = [T; 3]

The primitive array type to generate.
§

type Iter<'a> = IntoIter<&'a T, 3> where Self: 'a, T: 'a

Immutable element iterator type.
§

type IterMut<'a> = IntoIter<&'a mut T, 3> where Self: 'a, T: 'a

Mutable element iterator type.
source§

fn to_array(self) -> Self::Array

Convert from the tuple to the primitive array. Read more
source§

fn iter<'a>(&'a self) -> Self::Iter<'a>
where Self: 'a, T: 'a,

Get immutable element iterator. Read more
source§

fn iter_mut<'a>(&'a mut self) -> Self::IterMut<'a>
where Self: 'a, T: 'a,

Get mutable element iterator. Read more
source§

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

§

type Array = [T; 2]

The primitive array type to generate.
§

type Iter<'a> = IntoIter<&'a T, 2> where Self: 'a, T: 'a

Immutable element iterator type.
§

type IterMut<'a> = IntoIter<&'a mut T, 2> where Self: 'a, T: 'a

Mutable element iterator type.
source§

fn to_array(self) -> Self::Array

Convert from the tuple to the primitive array. Read more
source§

fn iter<'a>(&'a self) -> Self::Iter<'a>
where Self: 'a, T: 'a,

Get immutable element iterator. Read more
source§

fn iter_mut<'a>(&'a mut self) -> Self::IterMut<'a>
where Self: 'a, T: 'a,

Get mutable element iterator. Read more
source§

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

§

type Array = [T; 1]

The primitive array type to generate.
§

type Iter<'a> = IntoIter<&'a T, 1> where Self: 'a, T: 'a

Immutable element iterator type.
§

type IterMut<'a> = IntoIter<&'a mut T, 1> where Self: 'a, T: 'a

Mutable element iterator type.
source§

fn to_array(self) -> Self::Array

Convert from the tuple to the primitive array. Read more
source§

fn iter<'a>(&'a self) -> Self::Iter<'a>
where Self: 'a, T: 'a,

Get immutable element iterator. Read more
source§

fn iter_mut<'a>(&'a mut self) -> Self::IterMut<'a>
where Self: 'a, T: 'a,

Get mutable element iterator. 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, 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

Convert from 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

Convert from 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

Convert from 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

Convert from 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

Convert from 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

Convert from 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

Convert from 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

Convert from 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

Convert from 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

Convert from 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

Convert from 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

Convert from 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

Convert from 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

Convert from 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

Convert from 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

Convert from 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

Convert from 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

Convert from 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

Convert from 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

Convert from 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

Convert from 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

Convert from 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

Convert from 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

Convert from 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

Convert from 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

Convert from 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

Convert from 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

Convert from 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

Convert from 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

Convert from 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

Convert from 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

Convert from 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 AsPtrOutput = Tuple<*const First, <Other as TupleLike>::AsPtrOutput>

The type of tuple containing pointers to all elements of the tuple.
§

type AsMutPtrOutput = Tuple<*mut First, <Other as TupleLike>::AsMutPtrOutput>

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

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

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

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

The type of tuple containing Pins of 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.
§

type ToTupleOutput = Tuple<Tuple<First, Unit>, <Other as TupleLike>::ToTupleOutput>

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

type Uninit = Tuple<MaybeUninit<First>, <Other as TupleLike>::Uninit>

Available on crate feature uninit only.
The type of tuple after wrapping all elements into MaybeUninit.
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 as_ptr(&self) -> Self::AsPtrOutput

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

fn as_mut_ptr(&mut self) -> Self::AsMutPtrOutput

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

fn as_pin_ref(self: Pin<&Self>) -> Self::AsPinRefOutput<'_>

Convert from Pin<&Tuple<T0, T1, T2, ..> to Tuple<Pin<&T0>, Pin<&T1>, Pin<&T2>, ...>.
source§

fn as_pin_mut(self: Pin<&mut Self>) -> Self::AsPinMutOutput<'_>

Convert from Pin<&mut Tuple<T0, T1, T2, ..> to Tuple<Pin<&mut T0>, Pin<&mut T1>, Pin<&mut T2>, ...>.
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 from tuple!(a, b, c ...) to tuple!(Some(a), Some(b), Some(c) ...). Read more
source§

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

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

fn to_tuple(self) -> Self::ToTupleOutput

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

fn uninit() -> Self::Uninit

Available on crate feature uninit only.
Create a new tuple that all elements are wrapped by MaybeUninit and in uninitialized states. Read more
source§

fn zeroed() -> Self::Uninit

Available on crate feature uninit only.
Create a new tuple that all elements are wrapped by MaybeUninit and in uninitialized states, with the memory being filled with 0 bytes. Read more
source§

fn to_uninit(self) -> Self::Uninit

Available on crate feature uninit only.
Convert from tuple!(a, b, c ...) to tuple!(MaybeUninit::new(a), MaybeUninit::new(b), MaybeUninit::new(c) ...). Read more
source§

fn len(&self) -> usize

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

fn is_empty(&self) -> bool

Check if tuple is empty. Read more
source§

fn by_ref(&mut self) -> &mut Self
where Self: Sized,

Creates a “by reference” adapter for this instance. Read more
source§

fn take<T, I>(self) -> (T, Self::TakeRemainder)
where Self: Search<T, I> + Sized,

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

fn get_ref<T, I>(&self) -> &T
where Self: Search<T, I> + Sized,

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

fn get_mut<T, I>(&mut self) -> &mut T
where Self: Search<T, I> + Sized,

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

fn swap<T, I>(&mut self, value: &mut T)
where Self: Search<T, I>,

Swap a specific element of the same type with another value. Read more
source§

fn replace<T, I>(&mut self, value: T) -> T
where Self: Search<T, I>,

Replace a specific element of the same type with another value. Read more
source§

fn map_replace<T, U, F, I>(self, f: F) -> Self::MapReplaceOutput<U>
where Self: Search<T, I> + Sized, F: FnOnce(T) -> U,

Replace a specific element with another value that may be of a different type. Read more
source§

fn subseq<Seq, I>(self) -> Seq
where Self: Subseq<Seq, I> + Sized, Seq: TupleLike,

Take out a subsequence. Read more
source§

fn subseq_ref<Seq, I>(&self) -> Seq::AsRefOutput<'_>
where Self: Subseq<Seq, I> + Sized, Seq: TupleLike,

Similar to subseq(), but all its elements are immutable references to the supersequence’s elements. Read more
source§

fn subseq_mut<Seq, I>(&mut self) -> Seq::AsMutOutput<'_>
where Self: Subseq<Seq, I> + Sized, Seq: TupleLike,

Similar to subseq(), but all its elements are mutable references to the supersequence’s elements. Read more
source§

fn swap_subseq<Seq, I>(&mut self, subseq: &mut Seq)
where Seq: TupleLike, Self: Subseq<Seq, I>,

Swap elements with a subsequence. Read more
source§

fn replace_subseq<Seq, I>(&mut self, subseq: Seq) -> Seq
where Seq: TupleLike, Self: Subseq<Seq, I>,

Replace elements with a subsequence. Read more
source§

fn map_replace_subseq<Seq, F, I>(self, f: F) -> Self::MapReplaceOutput
where Seq: TupleLike, Self: SubseqMapReplace<Seq, F, I> + Sized,

Replace elements of specific subsequence with another sequence that may be of different element types. Read more
source§

fn foreach_subseq<Seq, F, I>(self, f: F) -> Self::MapReplaceOutput
where Seq: TupleLike, Self: SubseqMapReplace<Seq, F, I> + Sized,

Replace elements of specific subsequence with another sequence that may be of different element types. Read more
source§

fn con_subseq<Seq, I>(self) -> Seq
where Seq: TupleLike, Self: ConSubseq<Seq, I> + Sized,

Take out a contiguous subsequence. Read more
source§

fn con_subseq_ref<Seq, I>(&self) -> Seq::AsRefOutput<'_>
where Seq: TupleLike, Self: ConSubseq<Seq, I>,

Similar to con_subseq(), but all its elements are immutable references to the supersequence’s elements. Read more
source§

fn con_subseq_mut<Seq, I>(&mut self) -> Seq::AsMutOutput<'_>
where Seq: TupleLike, Self: ConSubseq<Seq, I>,

Similar to con_subseq(), but all its elements are mutable references to the supersequence’s elements. Read more
source§

fn swap_con_subseq<Seq, I>(&mut self, subseq: &mut Seq)
where Seq: TupleLike, Self: ConSubseq<Seq, I>,

Swap elements with a contiguous subsequence. Read more
source§

fn replace_con_subseq<Seq, I>(&mut self, subseq: Seq) -> Seq
where Seq: TupleLike, Self: ConSubseq<Seq, I>,

Replace elements with a contiguous subsequence. Read more
source§

fn map_replace_con_subseq<Seq, F, I>(self, f: F) -> Self::MapReplaceOutput
where Seq: TupleLike, Self: ConSubseqMapReplace<Seq, F, I> + Sized,

Replace elements of specific contiguous subsequence with another sequence that may be of different element types. Read more
source§

fn foreach_con_subseq<Seq, F, I>(self, f: F) -> Self::MapReplaceOutput
where Seq: TupleLike, Self: ConSubseqMapReplace<Seq, F, I> + Sized,

Replace elements of specific contiguous subsequence with another sequence that may be of different element types. Read more
source§

fn subset<Seq, I>(self) -> Seq
where Self: Subseq<Seq, I> + Sized, Seq: TupleLike,

👎Deprecated since 0.10.0: Use subseq() or con_subseq() instead
In the past it was used for the functionality of subseq(), however it did not live up to its name: you actually got a subsequence not a subset while subsets are not required to maintain a consistent element order as the superset. Read more
source§

fn subset_ref<Seq, I>(&self) -> Seq::AsRefOutput<'_>
where Self: Subseq<Seq, I> + Sized, Seq: TupleLike,

👎Deprecated since 0.10.0: Use subseq_ref() or con_subseq_ref() instead
In the past it was used for the functionality of subseq_ref(), however it did not live up to its name: you actually got a subsequence not a subset while subsets are not required to maintain a consistent element order as the superset. Read more
source§

fn subset_mut<Seq, I>(&mut self) -> Seq::AsMutOutput<'_>
where Self: Subseq<Seq, I> + Sized, Seq: TupleLike,

👎Deprecated since 0.10.0: Use subseq_mut() or con_subseq_mut() instead
In the past it was used for the functionality of subseq_mut(), however it did not live up to its name: you actually got a subsequence not a subset while subsets are not required to maintain a consistent element order as the superset. Read more
source§

fn swap_with<Seq, I>(&mut self, subseq: &mut Seq)
where Seq: TupleLike, Self: ConSubseq<Seq, I>,

👎Deprecated since 0.10.0: Use swap(), swap_subseq() or swap_con_subseq() instead
In the past it was used for the functionality of swap_con_subseq(), but with the addition of swap_subseq(), the functionality of this method becomes very unclear. Read more
source§

fn replace_with<Seq, I>(&mut self, subseq: Seq) -> Seq
where Seq: TupleLike, Self: ConSubseq<Seq, I>,

👎Deprecated since 0.10.0: Use replace(), replace_subseq() or replace_con_subseq() instead
In the past it was used for the functionality of replace_con_subseq(), but with the addition of replace_subseq(), the functionality of this method becomes very unclear. Read more
source§

unsafe fn uninit_assume_init_one<T, I>(self) -> Self::MapReplaceOutput<T>
where Self: Search<MaybeUninit<T>, I> + Sized,

Available on crate feature uninit only.
Extract value from a specific MaybeUninit element. Read more
source§

unsafe fn uninit_assume_init_read_one<T, I>(&self) -> T
where Self: Search<MaybeUninit<T>, I>,

Available on crate feature uninit only.
Read one value from a specific MaybeUninit element. Read more
source§

unsafe fn uninit_assume_init_ref_one<T, I>(&self) -> &T
where Self: Search<MaybeUninit<T>, I>,

Available on crate feature uninit only.
Get immutable reference to value of a specific MaybeUninit element. Read more
source§

unsafe fn uninit_assume_init_mut_one<T, I>(&mut self) -> &mut T
where Self: Search<MaybeUninit<T>, I>,

Available on crate feature uninit only.
Get mutable reference to value of a specific MaybeUninit element. Read more
source§

unsafe fn uninit_assume_init_drop_one<T, I>(&mut self)
where Self: Search<MaybeUninit<T>, I>,

Available on crate feature uninit only.
Drop value in place for a specific MaybeUninit element. Read more
source§

fn uninit_write_one<T, I>(&mut self, value: T) -> &mut T
where Self: Search<MaybeUninit<T>, I>,

Available on crate feature uninit only.
Set value to a specific MaybeUninit element in a tuple. Read more
source§

unsafe fn uninit_assume_init_subseq<Seq, I>(self) -> Self::PartiallyInitialized
where Seq: TupleLike, Self: UninitSubseq<Seq, I> + Sized,

Available on crate feature uninit only.
Extract values of a specific subsequence consisting of MaybeUninit elements. Read more
source§

unsafe fn uninit_assume_init_read_subseq<Seq, I>(&self) -> Seq
where Seq: TupleLike, Self: UninitSubseq<Seq, I>,

Available on crate feature uninit only.
Read the values of a specific subsequence consisting of MaybeUninit elements. Read more
source§

unsafe fn uninit_assume_init_ref_subseq<Seq, I>( &self, ) -> <Seq as TupleLike>::AsRefOutput<'_>
where Seq: TupleLike, Self: UninitSubseq<Seq, I>,

Available on crate feature uninit only.
Get immutable references to values of a specific subsequence consisting of MaybeUninit elements. Read more
source§

unsafe fn uninit_assume_init_mut_subseq<Seq, I>( &mut self, ) -> <Seq as TupleLike>::AsMutOutput<'_>
where Seq: TupleLike, Self: UninitSubseq<Seq, I>,

Available on crate feature uninit only.
Get mutable references to values of a specific subsequence consisting of MaybeUninit elements. Read more
source§

fn uninit_subseq_as_ptr<Seq, I>(&self) -> <Seq as TupleLike>::AsPtrOutput
where Seq: TupleLike, Self: UninitSubseq<Seq, I>,

Available on crate feature uninit only.
Get pointers to values of a specific subsequence consisting of MaybeUninit elements. Read more
source§

fn uninit_subseq_as_mut_ptr<Seq, I>( &mut self, ) -> <Seq as TupleLike>::AsMutPtrOutput
where Seq: TupleLike, Self: UninitSubseq<Seq, I>,

Available on crate feature uninit only.
Get mutable pointers to values of a specific subsequence consisting of MaybeUninit elements. Read more
source§

fn uninit_write_subseq<Seq, I>(&mut self, subseq: Seq) -> Seq::AsMutOutput<'_>
where Seq: TupleLike, Self: UninitSubseq<Seq, I>,

Available on crate feature uninit only.
Set values to a subsequence consisting of MaybeUninit elements. Read more
source§

unsafe fn uninit_assume_init_drop_subseq<Seq, I>(&mut self)
where Seq: TupleLike, Self: UninitSubseq<Seq, I>,

Available on crate feature uninit only.
Drop values in place for a subsequence consisting of MaybeUninit elements. Read more
source§

unsafe fn uninit_assume_init_con_subseq<Seq, I>( self, ) -> Self::PartiallyInitialized
where Seq: TupleLike, Self: UninitConSubseq<Seq, I> + Sized,

Available on crate feature uninit only.
Extract values of a specific contiguous subsequence consisting of MaybeUninit elements. Read more
source§

unsafe fn uninit_assume_init_read_con_subseq<Seq, I>(&self) -> Seq
where Seq: TupleLike, Self: UninitConSubseq<Seq, I>,

Available on crate feature uninit only.
Read the values of a specific contiguous subsequence consisting of MaybeUninit elements. Read more
source§

unsafe fn uninit_assume_init_ref_con_subseq<Seq, I>( &self, ) -> <Seq as TupleLike>::AsRefOutput<'_>
where Seq: TupleLike, Self: UninitConSubseq<Seq, I>,

Available on crate feature uninit only.
Get immutable references to values of a specific contiguous subsequence consisting of MaybeUninit elements. Read more
source§

unsafe fn uninit_assume_init_mut_con_subseq<Seq, I>( &mut self, ) -> <Seq as TupleLike>::AsMutOutput<'_>
where Seq: TupleLike, Self: UninitConSubseq<Seq, I>,

Available on crate feature uninit only.
Get mutable references to values of a specific contiguous subsequence consisting of MaybeUninit elements. Read more
source§

fn uninit_con_subseq_as_ptr<Seq, I>(&self) -> <Seq as TupleLike>::AsPtrOutput
where Seq: TupleLike, Self: UninitConSubseq<Seq, I>,

Available on crate feature uninit only.
Get pointers to values of a specific contiguous subsequence consisting of MaybeUninit elements. Read more
source§

fn uninit_con_subseq_as_mut_ptr<Seq, I>( &mut self, ) -> <Seq as TupleLike>::AsMutPtrOutput
where Seq: TupleLike, Self: UninitConSubseq<Seq, I>,

Available on crate feature uninit only.
Get mutable pointers to values of a specific contiguous subsequence consisting of MaybeUninit elements. Read more
source§

fn uninit_write_con_subseq<Seq, I>( &mut self, subseq: Seq, ) -> Seq::AsMutOutput<'_>
where Seq: TupleLike, Self: UninitConSubseq<Seq, I>,

Available on crate feature uninit only.
Set values to a contiguous subsequence consisting of MaybeUninit elements. Read more
source§

unsafe fn uninit_assume_init_drop_con_subseq<Seq, I>(&mut self)
where Seq: TupleLike, Self: UninitConSubseq<Seq, I>,

Available on crate feature uninit only.
Drop values in place for a contiguous subsequence consisting of MaybeUninit elements. Read more
source§

fn foreach<F>(self, mapper: F) -> <Self as Foreach<F>>::Output
where Self: Foreach<F> + Sized,

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

fn fold<F, Acc>(self, folder: F, acc: Acc) -> <Self as Foldable<F, Acc>>::Output
where Self: Foldable<F, Acc> + Sized,

Fold the tuple. Read more
source§

fn any<Pred>(&self, predicate: Pred) -> bool
where Self: TestAny<Pred>,

Tests if any element of the tuple matches a predicate. Read more
source§

fn all<Pred>(&self, predicate: Pred) -> bool
where Self: TestAll<Pred>,

Tests if every element of the tuple matches a predicate. Read more
source§

fn dot<T>(self, rhs: T) -> <Self as Dot<T>>::Output
where Self: Dot<T> + Sized,

Performs dot product operation. Read more
source§

fn zip<T>(self, rhs: T) -> Self::ZipOutput
where Self: Zippable<T> + Sized,

Zip two tuples. Read more
source§

fn zip2<T>(self, rhs: T) -> Self::ZipOutput2
where Self: Zippable<T> + Sized,

Zip two tuples, but output elements are primitive tuples. Read more
source§

fn extend<T>(self, rhs: T) -> Self::ExtendBackOutput
where Self: Extendable<T> + Sized,

If the elements of a tuple are all tuples, push an element to the back of each tuple element. Read more
source§

fn extend_front<T>(self, rhs: T) -> Self::ExtendFrontOutput
where Self: Extendable<T> + Sized,

If the elements of a tuple are all tuples, push an element to the front of each tuple element. Read more
source§

fn extend_back<T>(self, rhs: T) -> Self::ExtendBackOutput
where Self: Extendable<T> + Sized,

If the elements of a tuple are all tuples, push an element to the front of each tuple element. Same as extend().
source§

fn combine<T>(self, rhs: T) -> Self::CombineOutput
where Self: Combinable<T> + Sized,

If two tuples have the same number of elements, and their elements are both tuples, join their tuple elements one-to-one. Read more
source§

fn replace_head<T>(self, rhs: T) -> (Self::ReplaceOutput, Self::Replaced)
where T: TupleLike, Self: HeadReplaceable<T> + Sized,

Replace the first N elements of the tuple with all elements of another tuple of N elements. Read more
source§

fn replace_tail<T, I>(self, rhs: T) -> (Self::ReplaceOutput, Self::Replaced)
where T: TupleLike, Self: TailReplaceable<T, I> + Sized,

Replace the last N elements of the tuple with all elements of another tuple of N elements. Read more
source§

fn call<T, P>(&self, rhs: T) -> <Self as Callable<T, P>>::Output
where Self: Callable<T, P>,

When all elements of the tuple implement Fn(T) for a specific T, call them once in sequence. Read more
source§

fn call_mut<T, P>(&mut self, rhs: T) -> <Self as MutCallable<T, P>>::Output
where Self: MutCallable<T, P>,

When all elements of the tuple implement FnMut(T) for a specific T, call them once in sequence. Read more
source§

fn call_once<T, P>(self, rhs: T) -> <Self as OnceCallable<T, P>>::Output
where Self: OnceCallable<T, P> + Sized,

When all elements of the tuple implement FnOnce(T) for a specific T, call them once in sequence. Read more
source§

impl<First, Other> Uninit for Tuple<MaybeUninit<First>, Other>
where Other: Uninit,

Available on crate feature uninit only.
§

type Initialized = Tuple<First, <Other as Uninit>::Initialized>

The type of the tuple consisting of values of each MaybeUninit elements.
source§

unsafe fn assume_init(self) -> Self::Initialized

Extract the values of a tuple consisting of MaybeUninit elements. Read more
source§

unsafe fn assume_init_read(&self) -> Self::Initialized

Read the values of a tuple consisting of MaybeUninit elements. Read more
source§

unsafe fn assume_init_ref( &self, ) -> <Self::Initialized as TupleLike>::AsRefOutput<'_>

Get immutable references to values of a tuple consisting of MaybeUninit elements. Read more
source§

unsafe fn assume_init_mut( &mut self, ) -> <Self::Initialized as TupleLike>::AsMutOutput<'_>

Get mutable references to values of a tuple consisting of MaybeUninit elements. Read more
source§

unsafe fn assume_init_drop(&mut self)

Drop values in place for a tuple consisting of MaybeUninit elements. Read more
source§

fn as_ptr(&self) -> <Self::Initialized as TupleLike>::AsPtrOutput

Get points to values of a tuple consisting of MaybeUninit elements. Read more
source§

fn as_mut_ptr(&mut self) -> <Self::Initialized as TupleLike>::AsMutPtrOutput

Get mutable points to values of a tuple consisting of MaybeUninit elements. Read more
source§

fn write( &mut self, init: Self::Initialized, ) -> <Self::Initialized as TupleLike>::AsMutOutput<'_>

Set values to a tuple consisting of MaybeUninit elements. Read more
source§

impl<First, Other, T, I> UninitConSubseq<T, Unused<I>> for Tuple<First, Other>
where T: TupleLike, Other: UninitConSubseq<T, I>,

Available on crate feature uninit only.
§

type PartiallyInitialized = Tuple<First, <Other as UninitConSubseq<T, I>>::PartiallyInitialized>

The type of tuple consisting of elements not in the contiguous subsequence and values of each MaybeUninit elements in the contiguous subsequence.
source§

unsafe fn assume_init_con_subseq(self) -> Self::PartiallyInitialized

Extract values of a specific contiguous subsequence consisting of MaybeUninit elements. Read more
source§

unsafe fn assume_init_read_con_subseq(&self) -> T

Read the values of a specific contiguous subsequence consisting of MaybeUninit elements. Read more
source§

unsafe fn assume_init_ref_con_subseq(&self) -> <T as TupleLike>::AsRefOutput<'_>

Get immutable references to values of a specific contiguous subsequence consisting of MaybeUninit elements. Read more
source§

unsafe fn assume_init_mut_con_subseq( &mut self, ) -> <T as TupleLike>::AsMutOutput<'_>

Get mutable references to values of a specific contiguous subsequence consisting of MaybeUninit elements. Read more
source§

fn con_subseq_as_ptr(&self) -> <T as TupleLike>::AsPtrOutput

Get pointers to values of a specific contiguous subsequence consisting of MaybeUninit elements. Read more
source§

fn con_subseq_as_mut_ptr(&mut self) -> <T as TupleLike>::AsMutPtrOutput

Get mutable pointers to values of a specific contiguous subsequence consisting of MaybeUninit elements. Read more
source§

fn write_con_subseq(&mut self, subseq: T) -> <T as TupleLike>::AsMutOutput<'_>

Set values to a contiguous subsequence consisting of MaybeUninit elements. Read more
source§

unsafe fn assume_init_drop_con_subseq(&mut self)

Drop values in place for a contiguous subsequence consisting of MaybeUninit elements. Read more
source§

impl<First, Other, I> UninitConSubseq<Tuple<First, Unit>, Used<I>> for Tuple<MaybeUninit<First>, Other>
where Other: UninitConSubseq<Unit, I>,

Available on crate feature uninit only.
§

type PartiallyInitialized = Tuple<First, Other>

The type of tuple consisting of elements not in the contiguous subsequence and values of each MaybeUninit elements in the contiguous subsequence.
source§

unsafe fn assume_init_con_subseq(self) -> Self::PartiallyInitialized

Extract values of a specific contiguous subsequence consisting of MaybeUninit elements. Read more
source§

unsafe fn assume_init_read_con_subseq(&self) -> Tuple<First, Unit>

Read the values of a specific contiguous subsequence consisting of MaybeUninit elements. Read more
source§

unsafe fn assume_init_ref_con_subseq( &self, ) -> <Tuple<First, Unit> as TupleLike>::AsRefOutput<'_>

Get immutable references to values of a specific contiguous subsequence consisting of MaybeUninit elements. Read more
source§

unsafe fn assume_init_mut_con_subseq( &mut self, ) -> <Tuple<First, Unit> as TupleLike>::AsMutOutput<'_>

Get mutable references to values of a specific contiguous subsequence consisting of MaybeUninit elements. Read more
source§

fn con_subseq_as_ptr(&self) -> <Tuple<First, Unit> as TupleLike>::AsPtrOutput

Get pointers to values of a specific contiguous subsequence consisting of MaybeUninit elements. Read more
source§

fn con_subseq_as_mut_ptr( &mut self, ) -> <Tuple<First, Unit> as TupleLike>::AsMutPtrOutput

Get mutable pointers to values of a specific contiguous subsequence consisting of MaybeUninit elements. Read more
source§

fn write_con_subseq( &mut self, subseq: Tuple<First, Unit>, ) -> <Tuple<First, Unit> as TupleLike>::AsMutOutput<'_>

Set values to a contiguous subsequence consisting of MaybeUninit elements. Read more
source§

unsafe fn assume_init_drop_con_subseq(&mut self)

Drop values in place for a contiguous subsequence consisting of MaybeUninit elements. Read more
source§

impl<First1, First2, Other1, Other2, I> UninitConSubseq<Tuple<First1, Tuple<First2, Other2>>, Used<I>> for Tuple<MaybeUninit<First1>, Other1>
where Other1: UninitConSubseq<Tuple<First2, Other2>, Used<I>>, Other2: TupleLike,

Available on crate feature uninit only.
§

type PartiallyInitialized = Tuple<First1, <Other1 as UninitConSubseq<Tuple<First2, Other2>, Used<I>>>::PartiallyInitialized>

The type of tuple consisting of elements not in the contiguous subsequence and values of each MaybeUninit elements in the contiguous subsequence.
source§

unsafe fn assume_init_con_subseq(self) -> Self::PartiallyInitialized

Extract values of a specific contiguous subsequence consisting of MaybeUninit elements. Read more
source§

unsafe fn assume_init_read_con_subseq( &self, ) -> Tuple<First1, Tuple<First2, Other2>>

Read the values of a specific contiguous subsequence consisting of MaybeUninit elements. Read more
source§

unsafe fn assume_init_ref_con_subseq( &self, ) -> <Tuple<First1, Tuple<First2, Other2>> as TupleLike>::AsRefOutput<'_>

Get immutable references to values of a specific contiguous subsequence consisting of MaybeUninit elements. Read more
source§

unsafe fn assume_init_mut_con_subseq( &mut self, ) -> <Tuple<First1, Tuple<First2, Other2>> as TupleLike>::AsMutOutput<'_>

Get mutable references to values of a specific contiguous subsequence consisting of MaybeUninit elements. Read more
source§

fn con_subseq_as_ptr( &self, ) -> <Tuple<First1, Tuple<First2, Other2>> as TupleLike>::AsPtrOutput

Get pointers to values of a specific contiguous subsequence consisting of MaybeUninit elements. Read more
source§

fn con_subseq_as_mut_ptr( &mut self, ) -> <Tuple<First1, Tuple<First2, Other2>> as TupleLike>::AsMutPtrOutput

Get mutable pointers to values of a specific contiguous subsequence consisting of MaybeUninit elements. Read more
source§

fn write_con_subseq( &mut self, subseq: Tuple<First1, Tuple<First2, Other2>>, ) -> <Tuple<First1, Tuple<First2, Other2>> as TupleLike>::AsMutOutput<'_>

Set values to a contiguous subsequence consisting of MaybeUninit elements. Read more
source§

unsafe fn assume_init_drop_con_subseq(&mut self)

Drop values in place for a contiguous subsequence consisting of MaybeUninit elements. Read more
source§

impl<First, Other, T, I> UninitSubseq<T, Unused<I>> for Tuple<First, Other>
where T: TupleLike, Other: TupleLike + UninitSubseq<T, I>,

Available on crate feature uninit only.
§

type PartiallyInitialized = Tuple<First, <Other as UninitSubseq<T, I>>::PartiallyInitialized>

The type of tuple consisting of elements not in the subsequence and values of each MaybeUninit elements in the subsequence.
source§

unsafe fn assume_init_subseq(self) -> Self::PartiallyInitialized

Extract values of a specific subsequence consisting of MaybeUninit elements. Read more
source§

unsafe fn assume_init_read_subseq(&self) -> T

Read the values of a specific subsequence consisting of MaybeUninit elements. Read more
source§

unsafe fn assume_init_ref_subseq(&self) -> <T as TupleLike>::AsRefOutput<'_>

Get immutable references to values of a specific subsequence consisting of MaybeUninit elements. Read more
source§

unsafe fn assume_init_mut_subseq(&mut self) -> <T as TupleLike>::AsMutOutput<'_>

Get mutable references to values of a specific subsequence consisting of MaybeUninit elements. Read more
source§

fn subseq_as_ptr(&self) -> <T as TupleLike>::AsPtrOutput

Get pointers to values of a specific subsequence consisting of MaybeUninit elements. Read more
source§

fn subseq_as_mut_ptr(&mut self) -> <T as TupleLike>::AsMutPtrOutput

Get mutable pointers to values of a specific subsequence consisting of MaybeUninit elements. Read more
source§

fn write_subseq(&mut self, subseq: T) -> <T as TupleLike>::AsMutOutput<'_>

Set values to a subsequence consisting of MaybeUninit elements. Read more
source§

unsafe fn assume_init_drop_subseq(&mut self)

Drop values in place for a subsequence consisting of MaybeUninit elements. Read more
source§

impl<First, Other1, Other2, I> UninitSubseq<Tuple<First, Other2>, Used<I>> for Tuple<MaybeUninit<First>, Other1>
where Other2: TupleLike, Other1: UninitSubseq<Other2, I>,

Available on crate feature uninit only.
§

type PartiallyInitialized = Tuple<First, <Other1 as UninitSubseq<Other2, I>>::PartiallyInitialized>

The type of tuple consisting of elements not in the subsequence and values of each MaybeUninit elements in the subsequence.
source§

unsafe fn assume_init_subseq(self) -> Self::PartiallyInitialized

Extract values of a specific subsequence consisting of MaybeUninit elements. Read more
source§

unsafe fn assume_init_read_subseq(&self) -> Tuple<First, Other2>

Read the values of a specific subsequence consisting of MaybeUninit elements. Read more
source§

unsafe fn assume_init_ref_subseq( &self, ) -> <Tuple<First, Other2> as TupleLike>::AsRefOutput<'_>

Get immutable references to values of a specific subsequence consisting of MaybeUninit elements. Read more
source§

unsafe fn assume_init_mut_subseq( &mut self, ) -> <Tuple<First, Other2> as TupleLike>::AsMutOutput<'_>

Get mutable references to values of a specific subsequence consisting of MaybeUninit elements. Read more
source§

fn subseq_as_ptr(&self) -> <Tuple<First, Other2> as TupleLike>::AsPtrOutput

Get pointers to values of a specific subsequence consisting of MaybeUninit elements. Read more
source§

fn subseq_as_mut_ptr( &mut self, ) -> <Tuple<First, Other2> as TupleLike>::AsMutPtrOutput

Get mutable pointers to values of a specific subsequence consisting of MaybeUninit elements. Read more
source§

fn write_subseq( &mut self, subseq: Tuple<First, Other2>, ) -> <Tuple<First, Other2> as TupleLike>::AsMutOutput<'_>

Set values to a subsequence consisting of MaybeUninit elements. Read more
source§

unsafe fn assume_init_drop_subseq(&mut self)

Drop values in place for a subsequence consisting of MaybeUninit elements. Read more
source§

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

§

type UntupleOutput = <First as TupleLike>::JoinOutput<<Other as Untupleable>::UntupleOutput>

The type of tuple generated by untupling the elements of the tuple.
source§

fn untuple(self) -> Self::UntupleOutput

Untuple a tuple, whose elements are all tuples with only one element. Read more
source§

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

Available on crate feature unwrap only.
§

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

Type of the contained value.
source§

fn unwrap(self) -> Self::UnwrapOutput

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,

Available on crate feature unwrap only.
§

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

Type of the contained value.
source§

fn unwrap_or_default(self) -> Self::UnwrapOutput

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

impl<FirstLeft, FirstRight, Other> Unzippable for Tuple<(FirstLeft, FirstRight), Other>
where Other: Unzippable,

§

type UnzipOutputLeft = Tuple<FirstLeft, <Other as Unzippable>::UnzipOutputLeft>

The type of the new tuple which collects all first elements of the tuple elements.
§

type UnzipOutputRight = Tuple<FirstRight, <Other as Unzippable>::UnzipOutputRight>

The type of the new tuple which collects all second elements of the tuple elements.
source§

fn unzip(self) -> (Self::UnzipOutputLeft, Self::UnzipOutputRight)

Unzip a tuple to two tuples, if all elements of the tuple are tuples with two elements. Elements can be of Tuple type or primitive tuple type. Read more
source§

impl<FirstLeft, FirstRight, Other> Unzippable for Tuple<Tuple<FirstLeft, Tuple<FirstRight, Unit>>, Other>
where Other: Unzippable,

§

type UnzipOutputLeft = Tuple<FirstLeft, <Other as Unzippable>::UnzipOutputLeft>

The type of the new tuple which collects all first elements of the tuple elements.
§

type UnzipOutputRight = Tuple<FirstRight, <Other as Unzippable>::UnzipOutputRight>

The type of the new tuple which collects all second elements of the tuple elements.
source§

fn unzip(self) -> (Self::UnzipOutputLeft, Self::UnzipOutputRight)

Unzip a tuple to two tuples, if all elements of the tuple are tuples with two elements. Elements can be of Tuple type or primitive tuple type. Read more
source§

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

§

type ZipOutput = Tuple<Tuple<First1, Tuple<First2, Unit>>, <Other1 as Zippable<Other2>>::ZipOutput>

The type of the output generated by zipping two tuples.
§

type ZipOutput2 = Tuple<(First1, First2), <Other1 as Zippable<Other2>>::ZipOutput2>

The type of the output generated by zipping two tuples, but elements are primitive tuples.
source§

fn zip(self, rhs: Tuple<First2, Other2>) -> Self::ZipOutput

Zip two tuples. Read more
source§

fn zip2(self, rhs: Tuple<First2, Other2>) -> Self::ZipOutput2

Zip two tuples, but output elements are primitive tuples. 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>

source§

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

Auto Trait Implementations§

§

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

§

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> HeadReplaceable<Unit> for T
where T: TupleLike,

§

type ReplaceOutput = T

The type of the tuple after replacing its elements.
§

type Replaced = Unit

The type of the tuple that collect all replaced elements.
source§

fn replace_head( self, rhs: Unit, ) -> (<T as HeadReplaceable<Unit>>::ReplaceOutput, <T as HeadReplaceable<Unit>>::Replaced)

Replace the first N elements of the tuple with all elements of another tuple of N elements. Read more
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, U> TailReplaceable<T, Complete> for U
where T: TupleLenEqTo<U>, U: TupleLike,

§

type ReplaceOutput = T

The type of the tuple after replacing its elements.
§

type Replaced = U

The type of the tuple that collect all replaced elements.
source§

fn replace_tail( self, rhs: T, ) -> (<U as TailReplaceable<T, Complete>>::ReplaceOutput, <U as TailReplaceable<T, Complete>>::Replaced)

Replace the last N elements of the tuple with all elements of another tuple of N elements. Read more
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.
source§

impl<'a, T, F> UnaryPredicate<'a, T> for F
where T: 'a, F: Mapper<&'a T, Output = bool>,

§

type NextUnaryPredicate = <F as Mapper<&'a T>>::NextMapper

Type of next unary predicate to be use.
source§

fn test( self, testee: &'a T, ) -> (bool, <F as UnaryPredicate<'a, T>>::NextUnaryPredicate)

Test a value with its immutable reference
source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,