Macro expect_macro::expect
[−]
[src]
macro_rules! expect { [$result:expr, $($rest:tt)*] => { ... }; [$result:expr] => { ... }; }
Unwrap a result or panic!
with a message.
This macro has two forms:
expect!(result)
: callspanic!("{:#?}", err)
on any unwrappedErr
/None
.expect!(result, ...)
: callspanic!(...)
on any unwrappedErr
/None
, allowing you to specify your own error formatting. This is recommened when you are usingexpect!
withOption
Example
Without format
#[macro_use] extern crate expect_macro; use expect_macro::*; let result = Err("expect error"); expect!(result); // COMPILER OUTPUT: // thread 'example' panicked at '"expect error"', src/lib.rs:5:5
With format
#[macro_use] extern crate expect_macro; use expect_macro::*; let result = Err("expect error"); expect!(result, "Some values: {}, {}", 1, 2); // COMPILER OUTPUT: // thread 'example' panicked at 'Some values: 1, 2', src/lib.rs:5:5