wasmer/lib/wasi/src/macros.rs

20 lines
515 B
Rust
Raw Normal View History

2019-04-01 16:34:18 -07:00
macro_rules! wasi_try {
($expr:expr) => {{
let res: Result<_, crate::syscalls::types::__wasi_errno_t> = $expr;
match res {
2019-04-20 14:22:31 -05:00
Ok(val) => {
debug!("wasi::wasi_try::val: {:?}", val);
val
}
Err(err) => {
debug!("wasi::wasi_try::err: {:?}", err);
return err;
}
2019-04-01 16:34:18 -07:00
}
}};
($expr:expr; $e:expr) => {{
let opt: Option<_> = $expr;
wasi_try!(opt.ok_or($e))
}};
}