Trait std::iter::MultiplicativeIteratorUnstable [-] [+] [src]

pub trait MultiplicativeIterator<A> {
    fn product(self) -> A;
}

A trait for iterators over elements which can be multiplied together.

Required Methods

fn product(self) -> A

Iterates over the entire iterator, multiplying all the elements

Examples

fn main() { use std::iter::{count, MultiplicativeIterator}; fn factorial(n: usize) -> usize { count(1, 1).take_while(|&i| i <= n).product() } assert!(factorial(0) == 1); assert!(factorial(1) == 1); assert!(factorial(5) == 120); }
use std::iter::{count, MultiplicativeIterator};

fn factorial(n: usize) -> usize {
    count(1, 1).take_while(|&i| i <= n).product()
}
assert!(factorial(0) == 1);
assert!(factorial(1) == 1);
assert!(factorial(5) == 120);

Implementors