4 stable releases

1.1.1 Apr 25, 2021
1.0.1 Apr 14, 2021
1.0.0 Apr 12, 2021

#669 in Rust patterns

Unlicense

6KB
65 lines

Crates.io License Docs

Log_Err

A small extension to the log crate, which provides two methods for core::result::Result<T, E> and core::option::Option<T>

log_except and log_unwrap, which invoke the log::error! macro (in case of Result::Err/Option::None) in addition to unwrapping/expecting the Result/Option.

Shorthand for:

something().map_err(|e| error!("{}: {:?}", msg, e)).expect(msg)

Example:

let mut file = File::create("foo.txt").log_expect("Error creating file");
# Error will be logged with the error! macro
[ERROR] Error creating file: Os { code: 2, kind: NotFound, message: "No such file or directory" }

# Main program panic'ing with same message
thread 'main' panicked at 'Error creating file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', test.rs:4:48

Dependencies

~88KB