fn-error-context 0.2.1

An attribute macro to add context to errors from a function.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
use fn_error_context::context;

#[context("context {}", arg.as_ref())]
fn do_stuff(arg: impl AsRef<str>) -> anyhow::Result<()> {
    anyhow::bail!("error {}", arg.as_ref())
}

fn main() {
    assert_eq!(
        format!("{:#}", do_stuff("hello").unwrap_err()),
        "context hello: error hello"
    );
}