[−][src]Trait resultit::stop_after_error::StopAfterError
Iterator adapter to stop iteration after the first error is encountered. Lazily yields each item in the iterator up to and including the first error. Subsequent calls to Iterator::next() return None. Use this trait to enable the stop_after_error() function for iterators.
Example:
// Use the StopAfterError trait to enable stop_after_error() on iterators. use resultit::StopAfterError; // Vector of results in which one result is an error. let mut v: Vec<Result<i32, MyError>> = vec![ Ok(1), Ok(2), Err(MyError{}), Ok(3) ]; // Collection continues even after encountering the error. v = v.into_iter().collect(); println!("{:?}", v); // [Ok(1), Ok(2), Err(MyError), Ok(3)] // Use stop_after_error() to stop iteration after the first error. v = v.into_iter().stop_after_error().collect(); println!("{:?}", v); // [Ok(1), Ok(2), Err(MyError)]
Required methods
ⓘImportant traits for StopAfterErrorIter<It>fn stop_after_error<O, E>(self) -> StopAfterErrorIter<Self> where
Self: Iterator<Item = Result<O, E>> + Sized,
ⓘImportant traits for StopAfterErrorIter<It>
Self: Iterator<Item = Result<O, E>> + Sized,
Iterator adapter to stop iteration after the first error is encountered. See documentation for StopAfterError for details.
Implementors
impl<It> StopAfterError for It where
It: Iterator + Sized,
[src]
It: Iterator + Sized,
ⓘImportant traits for StopAfterErrorIter<It>fn stop_after_error<O, E>(self) -> StopAfterErrorIter<Self> where
Self: Iterator<Item = Result<O, E>> + Sized,
[src]
ⓘImportant traits for StopAfterErrorIter<It>
Self: Iterator<Item = Result<O, E>> + Sized,