#peak #result #error-logging #result-handling

peak-result

A simple trait that extends the standard Result enum to allow you to run some code in case of error or success

3 releases (stable)

1.0.1 Oct 25, 2023
1.0.0 Oct 31, 2022
0.0.1 Oct 31, 2022

#525 in Rust patterns

37 downloads per month

MIT license

6KB
63 lines

peak result

This is a simple trait that extends the standard Result enum to allow you to run some code in case of error or success.

This crate exists because I find it annoying that it's needed to use map_err or map so that I can log the results from my functions. However, maybe people find this issue annoying too, and wish to extend upon this basic functionality that peak-error provides.

Usage

Quickstart

[dependencies]
peak-result = "1.0.1"
use peak_result::Peak;

async fn main() {
    // using `peak_err`
    let result = some_function_that_returns_result()
        .peak_err(|e| tracing::error!("function failed: {e:?}"));

    // using `peak_ok`
    let result = some_function_that_returns_result()
        .peak_ok(|it| tracing::info!("function succeeded: {it:?}"));
}

Contribuiting

Take a look at our contributing guide if you wish to contribute.

License

This project is licensed under the MIT license.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in peak-result by you, shall be licensed as MIT, without any additional terms or conditions.

No runtime deps