Есть ли макрос, который превратит ошибку в панику, как макрос try
? Нужно ли мне определять свое собственное?
Например, я бы хотел паниковать, если модульный тест не может открыть файл. Мой текущий обходной путь таков:
macro_rules! tryfail {
($expr:expr) => (match $expr {
result::Result::Ok(val) => val,
result::Result::Err(_) => panic!(stringify!($expr))
})
}
#[test]
fn foo() {
let c = tryfail!(File::open(...));
}