pub trait OnErrDo<I, O, E, F>{
// Required method
fn on_err(self, _: F) -> OnErr<I, O, E, F> ⓘ;
}
Expand description
Extension trait for Iterator<Item = Result<T, E>>
to do something on Err(_)
Required Methods§
Sourcefn on_err(self, _: F) -> OnErr<I, O, E, F> ⓘ
fn on_err(self, _: F) -> OnErr<I, O, E, F> ⓘ
Apply a sideffect on each Err
use resiter::onerr::OnErrDo;
use std::str::FromStr;
let mut errs = Vec::<::std::num::ParseIntError>::new();
let _: Vec<Result<usize, ::std::num::ParseIntError>> = ["1", "2", "a", "b", "5"]
.iter()
.map(|e| usize::from_str(e))
.on_err(|e| {
errs.push(e.to_owned())
})
.collect();
assert_eq!(errs.len(), 2);