macro_rules! an_err {
($kind:expr) => { ... };
($fmt:literal $(, $arg:expr)* => $inner:expr $(,)?) => { ... };
($kind:expr, $fmt:literal $(, $arg:expr)* $(,)?) => { ... };
}Expand description
Ergonomic constructor and chaining macro for AnErr.
ยงForms
| Form | Equivalent to |
|---|---|
an_err!(Kind) | AnErr::new(Kind) |
an_err!(Kind, "reason") | AnErr::with_fmt(Kind, ...) |
an_err!(Kind, "reason {}", arg, ...) | AnErr::with_fmt(Kind, ...) |
an_err!("reason" => inner) | inner.context(...) (appends to reason only) |
an_err!("reason {}", arg => inner) | inner.context_fmt(...) (appends to reason only) |