FirstTupleRow

Trait FirstTupleRow 

Source
pub trait FirstTupleRow: TupleLen {
    type FirstRowType: TupleRef + TupleLen<Len = <Self as TupleLen>::Len>;

    // Required method
    fn first_tuple_row(&self) -> <Self::FirstRowType as TupleRef>::Ref<'_>;
}
Expand description

A convenience trait for accessing the first row (index 0) in tuples of tuples.

This trait is automatically implemented for any tuple of tuples where each inner tuple implements TupleRefFront.

§Examples

use tuplities_row::FirstTupleRow;

let matrix = ((1, 2), (3, 4), (5, 6));
let first_row = matrix.first_tuple_row();
assert_eq!(first_row, (&1, &3, &5));

Part of the tuplities crate.

Required Associated Types§

Source

type FirstRowType: TupleRef + TupleLen<Len = <Self as TupleLen>::Len>

The type of the row tuple containing references to the first elements.

Required Methods§

Source

fn first_tuple_row(&self) -> <Self::FirstRowType as TupleRef>::Ref<'_>

Returns a tuple of references to the first element in each inner tuple.

Implementations on Foreign Types§

Source§

impl FirstTupleRow for ()

Source§

impl<T1: TupleRefFront> FirstTupleRow for (T1,)

Source§

impl<T1: TupleRefFront, T2: TupleRefFront> FirstTupleRow for (T1, T2)

Source§

impl<T1: TupleRefFront, T2: TupleRefFront, T3: TupleRefFront> FirstTupleRow for (T1, T2, T3)

Source§

impl<T1: TupleRefFront, T2: TupleRefFront, T3: TupleRefFront, T4: TupleRefFront> FirstTupleRow for (T1, T2, T3, T4)

Source§

impl<T1: TupleRefFront, T2: TupleRefFront, T3: TupleRefFront, T4: TupleRefFront, T5: TupleRefFront> FirstTupleRow for (T1, T2, T3, T4, T5)

Source§

impl<T1: TupleRefFront, T2: TupleRefFront, T3: TupleRefFront, T4: TupleRefFront, T5: TupleRefFront, T6: TupleRefFront> FirstTupleRow for (T1, T2, T3, T4, T5, T6)

Source§

impl<T1: TupleRefFront, T2: TupleRefFront, T3: TupleRefFront, T4: TupleRefFront, T5: TupleRefFront, T6: TupleRefFront, T7: TupleRefFront> FirstTupleRow for (T1, T2, T3, T4, T5, T6, T7)

Source§

impl<T1: TupleRefFront, T2: TupleRefFront, T3: TupleRefFront, T4: TupleRefFront, T5: TupleRefFront, T6: TupleRefFront, T7: TupleRefFront, T8: TupleRefFront> FirstTupleRow for (T1, T2, T3, T4, T5, T6, T7, T8)

Implementors§