macro_rules! ensure {
($cond:expr) => { ... };
($cond:expr, $ec:expr => $($msg:tt)*) => { ... };
($cond:expr, $($msg:tt)*) => { ... };
}Expand description
Macro to ensure a condition is true, otherwise returns early with a Err(HyperlightGuestError).
Usage:
ⓘ
ensure!(1 + 1 == 3, ErrorCode::UnknownError => "Maths is broken: {}", details);
// or
ensure!(1 + 1 == 3, "Maths is broken: {}", details); // defaults to ErrorCode::GuestError
// or
ensure!(1 + 1 == 3); // defaults to ErrorCode::GuestError with a default message