Struct Product

struct Product<I, J> { ... }
where
    I: Iterator

An iterator adaptor that iterates over the cartesian product of the element sets of two iterators I and J.

Iterator element type is (I::Item, J::Item).

See .cartesian_product() for more information.

Implementations

impl<I> IntoIterator for Product<I, J>

fn into_iter(self: Self) -> I

impl<I, J> Freeze for Product<I, J>

impl<I, J> FusedIterator for Product<I, J>

impl<I, J> Iterator for Product<I, J>

fn next(self: &mut Self) -> Option<<Self as >::Item>
fn size_hint(self: &Self) -> (usize, Option<usize>)
fn fold<Acc, G>(self: Self, accum: Acc, f: G) -> Acc
where
    G: FnMut(Acc, <Self as >::Item) -> Acc

impl<I, J> RefUnwindSafe for Product<I, J>

impl<I, J> Send for Product<I, J>

impl<I, J> Sync for Product<I, J>

impl<I, J> Unpin for Product<I, J>

impl<I, J> UnsafeUnpin for Product<I, J>

impl<I, J> UnwindSafe for Product<I, J>

impl<I, J: $crate::clone::Clone> Clone for Product<I, J>

fn clone(self: &Self) -> Product<I, J>

impl<I, J: $crate::fmt::Debug> Debug for Product<I, J>

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

impl<IT, A, FromA, B, FromB> MultiUnzip for Product<I, J>

fn multiunzip(self: Self) -> (FromA, FromB)

impl<T> Any for Product<I, J>

fn type_id(self: &Self) -> TypeId

impl<T> Borrow for Product<I, J>

fn borrow(self: &Self) -> &T

impl<T> BorrowMut for Product<I, J>

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

impl<T> CloneToUninit for Product<I, J>

unsafe fn clone_to_uninit(self: &Self, dest: *mut u8)

impl<T> From for Product<I, J>

fn from(t: T) -> T

Returns the argument unchanged.

impl<T> Itertools for Product<I, J>

impl<T> ToOwned for Product<I, J>

fn to_owned(self: &Self) -> T
fn clone_into(self: &Self, target: &mut T)

impl<T, U> Into for Product<I, J>

fn into(self: Self) -> U

Calls U::from(self).

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

impl<T, U> TryFrom for Product<I, J>

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

impl<T, U> TryInto for Product<I, J>

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