Macro branchless::try_exit_code
source · macro_rules! try_exit_code { ($e:expr) => { ... }; }
Expand description
Macro to propagate ExitCodes in the same way as the try! macro/the ?
operator.
Ideally, we would make ExitCode implement std::ops::Try, but that’s a
nightly API. We could also make ExitCode implement Error, but this
interacts badly with eyre::Result, because all Errors are convertible to
eyre::Error, so our exit codes get treated at the same as other errors.
So, instead, we have this macro to accomplish the same thing, but for
Result<T, ExitCode>s specifically.