pub trait Product<A = Self> { fn product<I>(iter: I) -> Self where I: Iterator<Item = A>; }
Trait to represent types that can be created by multiplying elements of an iterator.
This trait is used to implement the product
method on iterators. Types which implement the trait can be generated by the product
method. Like FromIterator
this trait should rarely be called directly and instead interacted with through Iterator::product
.
fn product<I>(iter: I) -> Self where
I: Iterator<Item = A>,
Method which takes an iterator and generates Self
from the elements by multiplying the items.
impl<'a> Product<&'a i128> for i128
impl Product<f32> for f32
impl<'a> Product<&'a Wrapping<isize>> for Wrapping<isize>
impl<'a> Product<&'a Wrapping<u32>> for Wrapping<u32>
impl<'a> Product<&'a Wrapping<u8>> for Wrapping<u8>
impl<'a> Product<&'a isize> for isize
impl Product<i16> for i16
impl<'a> Product<&'a i32> for i32
impl Product<Wrapping<usize>> for Wrapping<usize>
impl<'a> Product<&'a f64> for f64
impl<'a> Product<&'a i8> for i8
impl Product<Wrapping<i16>> for Wrapping<i16>
impl<T, U, E> Product<Result<U, E>> for Result<T, E> where
T: Product<U>,
impl<'a> Product<&'a Wrapping<u16>> for Wrapping<u16>
impl<'a> Product<&'a Wrapping<i32>> for Wrapping<i32>
impl<'a> Product<&'a u64> for u64
impl Product<Wrapping<u128>> for Wrapping<u128>
impl Product<usize> for usize
impl Product<Wrapping<isize>> for Wrapping<isize>
impl<'a> Product<&'a Wrapping<i128>> for Wrapping<i128>
impl Product<i8> for i8
impl Product<i128> for i128
impl Product<Wrapping<u8>> for Wrapping<u8>
impl<'a> Product<&'a usize> for usize
impl Product<u16> for u16
impl<'a> Product<&'a i64> for i64
impl<'a> Product<&'a u8> for u8
impl Product<f64> for f64
impl<'a> Product<&'a u16> for u16
impl Product<isize> for isize
impl<'a> Product<&'a Wrapping<u64>> for Wrapping<u64>
impl<'a> Product<&'a Wrapping<i16>> for Wrapping<i16>
impl<'a> Product<&'a Wrapping<i64>> for Wrapping<i64>
impl Product<u128> for u128
impl<'a> Product<&'a u32> for u32
impl<'a> Product<&'a Wrapping<u128>> for Wrapping<u128>
impl Product<Wrapping<i8>> for Wrapping<i8>
impl Product<u32> for u32
impl Product<i32> for i32
impl Product<Wrapping<i32>> for Wrapping<i32>
impl<'a> Product<&'a Wrapping<usize>> for Wrapping<usize>
impl Product<Wrapping<u32>> for Wrapping<u32>
impl Product<Wrapping<u16>> for Wrapping<u16>
impl Product<i64> for i64
impl<'a> Product<&'a Wrapping<i8>> for Wrapping<i8>
impl Product<Wrapping<i64>> for Wrapping<i64>
impl<'a> Product<&'a f32> for f32
impl Product<Wrapping<u64>> for Wrapping<u64>
impl Product<u8> for u8
impl Product<Wrapping<i128>> for Wrapping<i128>
impl<'a> Product<&'a u128> for u128
impl<'a> Product<&'a i16> for i16
impl Product<u64> for u64
© 2010 The Rust Project Developers
Licensed under the Apache License, Version 2.0 or the MIT license, at your option.
https://doc.rust-lang.org/std/iter/trait.Product.html