Trait kdam::TqdmIterator

source ·
pub trait TqdmIteratorwhere
    Self: Iterator + Sized,{
    // Required method
    fn tqdm_with_bar(self, pb: Bar) -> BarIter<Self> ;

    // Provided method
    fn tqdm(self) -> BarIter<Self>  { ... }
}
Expand description

Iterators decoration with BarIter.

Required Methods§

source

fn tqdm_with_bar(self, pb: Bar) -> BarIter<Self>

Decorate any sized iterator to BarIter with existing Bar.

Provided Methods§

source

fn tqdm(self) -> BarIter<Self>

Decorate any sized iterator to BarIter.

Example
use kdam::TqdmIterator;

let chars = ["a", "b", "c", "d"];
let mut charset = String::new();

for i in chars.iter().tqdm() {
    charset += i;
}

eprint!("\n");
assert_eq!(charset, "abcd");
Examples found in repository?
examples/miscellaneous/rayon.rs (line 10)
7
8
9
10
11
12
13
14
15
16
17
18
19
20
fn main() {
    let now = Instant::now();
    (0..100)
        .tqdm()
        .for_each(|_| sleep(Duration::from_micros(1)));
    println!("\n\nstd: {} ms\n", now.elapsed().as_millis());

    let now = Instant::now();
    (0..100)
        .into_par_iter()
        .tqdm()
        .for_each(|_| sleep(Duration::from_micros(1)));
    println!("\n\nrayon: {} ms", now.elapsed().as_millis());
}

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<S, T: Iterator<Item = S>> TqdmIterator for T