macro_rules! try_or_err { ($result:expr, $error:ident $(,)?) => { ... }; }
Tries to unwrap the Result, otherwise returns the error
fn function_returning_result() -> Result<u64> { err!(ErrorCode::MyError) } let my_value = try_or_err!(function_returning_result(), MyError);