Crate skip_fail

Source
Expand description

This crate provides a single macro to help skipping a error in a loop, possibly logging it.

For example, imagine you have some code like this.

for string_number in &["1", "2", "three", "4"] {
  let number: u32 = match string_number.parse() {
    Ok(n) => n,
    Err(e) => continue,
  };
}

Then you can use the macro skip_fail! to write like this.

for string_number in &["1", "2", "three", "4"] {
  let number: u32 = skip_fail!(string_number.parse());
}

If you want the error to be logged, you can use the feature log. The logging will be done in WARN level with the standard logging interface provided by log.

Macros§

skip_fail
skip_fail returns the value of a Result or continues a loop.