Trait iterextd::TupleIter

source ·
pub trait TupleIter<'a> {
    type TupImut;
    type TupMut;

    // Required methods
    fn tuple_iter(&'a self) -> Self::TupImut;
    fn tuple_iter_mut(&'a mut self) -> Self::TupMut;
}
Expand description

A trait that allows iterating over a tuple.

Required Associated Types§

source

type TupImut

The type of immutable references yielded by the tuple iterator.

source

type TupMut

The type of mutable references yielded by the tuple iterator.

Required Methods§

source

fn tuple_iter(&'a self) -> Self::TupImut

A tuple iterator that allows you to get each value by reference.

§Examples

Basic usage:

use iterextd::TupleIter;

let tup = (3, 2, 1);
let mut tup_iter = tup.tuple_iter().rev();
assert_eq!(tup_iter.next(), Some(&1));
assert_eq!(tup_iter.next(), Some(&2));
assert_eq!(tup_iter.next(), Some(&3));
assert_eq!(tup_iter.next(), None);
source

fn tuple_iter_mut(&'a mut self) -> Self::TupMut

A tuple iterator that allows you to get each value by mutable reference.

§Examples

Basic usage:

use iterextd::TupleIter;

let mut tup = (vec![20], vec![21], vec![22], vec![23]);
let _ = tup.tuple_iter_mut().for_each(|elem| { elem[0] +=10;});
assert_eq!(tup, (vec![30], vec![31], vec![32], vec![33]));

Implementations on Foreign Types§

source§

impl<'a, T: 'a> TupleIter<'a> for (T, T)

§

type TupImut = TupleImut<'a, T, 2>

§

type TupMut = TupleMut<'a, T, 2>

source§

fn tuple_iter(&'a self) -> Self::TupImut

source§

fn tuple_iter_mut(&'a mut self) -> Self::TupMut

source§

impl<'a, T: 'a> TupleIter<'a> for (T, T, T)

§

type TupImut = TupleImut<'a, T, 3>

§

type TupMut = TupleMut<'a, T, 3>

source§

fn tuple_iter(&'a self) -> Self::TupImut

source§

fn tuple_iter_mut(&'a mut self) -> Self::TupMut

source§

impl<'a, T: 'a> TupleIter<'a> for (T, T, T, T)

§

type TupImut = TupleImut<'a, T, 4>

§

type TupMut = TupleMut<'a, T, 4>

source§

fn tuple_iter(&'a self) -> Self::TupImut

source§

fn tuple_iter_mut(&'a mut self) -> Self::TupMut

source§

impl<'a, T: 'a> TupleIter<'a> for (T, T, T, T, T)

§

type TupImut = TupleImut<'a, T, 5>

§

type TupMut = TupleMut<'a, T, 5>

source§

fn tuple_iter(&'a self) -> Self::TupImut

source§

fn tuple_iter_mut(&'a mut self) -> Self::TupMut

source§

impl<'a, T: 'a> TupleIter<'a> for (T, T, T, T, T, T)

§

type TupImut = TupleImut<'a, T, 6>

§

type TupMut = TupleMut<'a, T, 6>

source§

fn tuple_iter(&'a self) -> Self::TupImut

source§

fn tuple_iter_mut(&'a mut self) -> Self::TupMut

source§

impl<'a, T: 'a> TupleIter<'a> for (T, T, T, T, T, T, T)

§

type TupImut = TupleImut<'a, T, 7>

§

type TupMut = TupleMut<'a, T, 7>

source§

fn tuple_iter(&'a self) -> Self::TupImut

source§

fn tuple_iter_mut(&'a mut self) -> Self::TupMut

source§

impl<'a, T: 'a> TupleIter<'a> for (T, T, T, T, T, T, T, T)

§

type TupImut = TupleImut<'a, T, 8>

§

type TupMut = TupleMut<'a, T, 8>

source§

fn tuple_iter(&'a self) -> Self::TupImut

source§

fn tuple_iter_mut(&'a mut self) -> Self::TupMut

source§

impl<'a, T: 'a> TupleIter<'a> for (T, T, T, T, T, T, T, T, T)

§

type TupImut = TupleImut<'a, T, 9>

§

type TupMut = TupleMut<'a, T, 9>

source§

fn tuple_iter(&'a self) -> Self::TupImut

source§

fn tuple_iter_mut(&'a mut self) -> Self::TupMut

source§

impl<'a, T: 'a> TupleIter<'a> for (T, T, T, T, T, T, T, T, T, T)

§

type TupImut = TupleImut<'a, T, 10>

§

type TupMut = TupleMut<'a, T, 10>

source§

fn tuple_iter(&'a self) -> Self::TupImut

source§

fn tuple_iter_mut(&'a mut self) -> Self::TupMut

source§

impl<'a, T: 'a> TupleIter<'a> for (T, T, T, T, T, T, T, T, T, T, T)

§

type TupImut = TupleImut<'a, T, 11>

§

type TupMut = TupleMut<'a, T, 11>

source§

fn tuple_iter(&'a self) -> Self::TupImut

source§

fn tuple_iter_mut(&'a mut self) -> Self::TupMut

source§

impl<'a, T: 'a> TupleIter<'a> for (T, T, T, T, T, T, T, T, T, T, T, T)

§

type TupImut = TupleImut<'a, T, 12>

§

type TupMut = TupleMut<'a, T, 12>

source§

fn tuple_iter(&'a self) -> Self::TupImut

source§

fn tuple_iter_mut(&'a mut self) -> Self::TupMut

source§

impl<'a, T: 'a> TupleIter<'a> for (T,)

§

type TupImut = TupleImut<'a, T, 1>

§

type TupMut = TupleMut<'a, T, 1>

source§

fn tuple_iter(&'a self) -> Self::TupImut

source§

fn tuple_iter_mut(&'a mut self) -> Self::TupMut

Implementors§