Flatten

Trait Flatten 

Source
pub trait Flatten: Sealed {
    type Flattened;

    // Required methods
    fn flatten(self) -> Self::Flattened;
    fn nest(v: Self::Flattened) -> Self;
}
Expand description

Inverse of Nest.

Required Associated Types§

Source

type Flattened

Equivalent flat tuple type.

Required Methods§

Source

fn flatten(self) -> Self::Flattened

Convert self to its flat representation.

Source

fn nest(v: Self::Flattened) -> Self

Convert a flat tuple to its nested representation.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl<A> Flatten for (A, ())

Source§

type Flattened = (A,)

Source§

fn flatten(self) -> Self::Flattened

Source§

fn nest(v: Self::Flattened) -> Self

Source§

impl<A, B> Flatten for (A, (B, ()))

Source§

type Flattened = (A, B)

Source§

fn flatten(self) -> Self::Flattened

Source§

fn nest(v: Self::Flattened) -> Self

Source§

impl<A, B, C> Flatten for (A, (B, (C, ())))

Source§

type Flattened = (A, B, C)

Source§

fn flatten(self) -> Self::Flattened

Source§

fn nest(v: Self::Flattened) -> Self

Source§

impl<A, B, C, D> Flatten for (A, (B, (C, (D, ()))))

Source§

impl<A, B, C, D, E> Flatten for (A, (B, (C, (D, (E, ())))))

Source§

impl<A, B, C, D, E, F> Flatten for (A, (B, (C, (D, (E, (F, ()))))))

Source§

impl<A, B, C, D, E, F, G> Flatten for (A, (B, (C, (D, (E, (F, (G, ())))))))

Source§

impl<A, B, C, D, E, F, G, H> Flatten for (A, (B, (C, (D, (E, (F, (G, (H, ()))))))))

Source§

impl<A, B, C, D, E, F, G, H, I> Flatten for (A, (B, (C, (D, (E, (F, (G, (H, (I, ())))))))))

Source§

impl<A, B, C, D, E, F, G, H, I, J> Flatten for (A, (B, (C, (D, (E, (F, (G, (H, (I, (J, ()))))))))))

Source§

impl<A, B, C, D, E, F, G, H, I, J, K> Flatten for (A, (B, (C, (D, (E, (F, (G, (H, (I, (J, (K, ())))))))))))

Source§

impl<A, B, C, D, E, F, G, H, I, J, K, L> Flatten for (A, (B, (C, (D, (E, (F, (G, (H, (I, (J, (K, (L, ()))))))))))))

Source§

impl<A, B, C, D, E, F, G, H, I, J, K, L, M> Flatten for (A, (B, (C, (D, (E, (F, (G, (H, (I, (J, (K, (L, (M, ())))))))))))))

Source§

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N> Flatten for (A, (B, (C, (D, (E, (F, (G, (H, (I, (J, (K, (L, (M, (N, ()))))))))))))))

Source§

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O> Flatten for (A, (B, (C, (D, (E, (F, (G, (H, (I, (J, (K, (L, (M, (N, (O, ())))))))))))))))

Source§

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P> Flatten for (A, (B, (C, (D, (E, (F, (G, (H, (I, (J, (K, (L, (M, (N, (O, (P, ()))))))))))))))))

Source§

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q> Flatten for (A, (B, (C, (D, (E, (F, (G, (H, (I, (J, (K, (L, (M, (N, (O, (P, (Q, ())))))))))))))))))

Source§

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R> Flatten for (A, (B, (C, (D, (E, (F, (G, (H, (I, (J, (K, (L, (M, (N, (O, (P, (Q, (R, ()))))))))))))))))))

Source§

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S> Flatten for (A, (B, (C, (D, (E, (F, (G, (H, (I, (J, (K, (L, (M, (N, (O, (P, (Q, (R, (S, ())))))))))))))))))))

Source§

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T> Flatten for (A, (B, (C, (D, (E, (F, (G, (H, (I, (J, (K, (L, (M, (N, (O, (P, (Q, (R, (S, (T, ()))))))))))))))))))))

Source§

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U> Flatten for (A, (B, (C, (D, (E, (F, (G, (H, (I, (J, (K, (L, (M, (N, (O, (P, (Q, (R, (S, (T, (U, ())))))))))))))))))))))

Source§

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V> Flatten for (A, (B, (C, (D, (E, (F, (G, (H, (I, (J, (K, (L, (M, (N, (O, (P, (Q, (R, (S, (T, (U, (V, ()))))))))))))))))))))))

Source§

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W> Flatten for (A, (B, (C, (D, (E, (F, (G, (H, (I, (J, (K, (L, (M, (N, (O, (P, (Q, (R, (S, (T, (U, (V, (W, ())))))))))))))))))))))))

Source§

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X> Flatten for (A, (B, (C, (D, (E, (F, (G, (H, (I, (J, (K, (L, (M, (N, (O, (P, (Q, (R, (S, (T, (U, (V, (W, (X, ()))))))))))))))))))))))))

Source§

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y> Flatten for (A, (B, (C, (D, (E, (F, (G, (H, (I, (J, (K, (L, (M, (N, (O, (P, (Q, (R, (S, (T, (U, (V, (W, (X, (Y, ())))))))))))))))))))))))))

Source§

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z> Flatten for (A, (B, (C, (D, (E, (F, (G, (H, (I, (J, (K, (L, (M, (N, (O, (P, (Q, (R, (S, (T, (U, (V, (W, (X, (Y, (Z, ()))))))))))))))))))))))))))

Source§

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z, AA> Flatten for (A, (B, (C, (D, (E, (F, (G, (H, (I, (J, (K, (L, (M, (N, (O, (P, (Q, (R, (S, (T, (U, (V, (W, (X, (Y, (Z, (AA, ())))))))))))))))))))))))))))

Source§

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z, AA, BB> Flatten for (A, (B, (C, (D, (E, (F, (G, (H, (I, (J, (K, (L, (M, (N, (O, (P, (Q, (R, (S, (T, (U, (V, (W, (X, (Y, (Z, (AA, (BB, ()))))))))))))))))))))))))))))

Source§

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z, AA, BB, CC> Flatten for (A, (B, (C, (D, (E, (F, (G, (H, (I, (J, (K, (L, (M, (N, (O, (P, (Q, (R, (S, (T, (U, (V, (W, (X, (Y, (Z, (AA, (BB, (CC, ())))))))))))))))))))))))))))))

Source§

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z, AA, BB, CC, DD> Flatten for (A, (B, (C, (D, (E, (F, (G, (H, (I, (J, (K, (L, (M, (N, (O, (P, (Q, (R, (S, (T, (U, (V, (W, (X, (Y, (Z, (AA, (BB, (CC, (DD, ()))))))))))))))))))))))))))))))

Source§

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z, AA, BB, CC, DD, EE> Flatten for (A, (B, (C, (D, (E, (F, (G, (H, (I, (J, (K, (L, (M, (N, (O, (P, (Q, (R, (S, (T, (U, (V, (W, (X, (Y, (Z, (AA, (BB, (CC, (DD, (EE, ())))))))))))))))))))))))))))))))

Source§

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z, AA, BB, CC, DD, EE, FF> Flatten for (A, (B, (C, (D, (E, (F, (G, (H, (I, (J, (K, (L, (M, (N, (O, (P, (Q, (R, (S, (T, (U, (V, (W, (X, (Y, (Z, (AA, (BB, (CC, (DD, (EE, (FF, ()))))))))))))))))))))))))))))))))

Implementors§