macro_rules! try2 { ($exp:expr) => { ... }; }
fn mul(maybe_num: Option<i32>) -> Result<Option<i32>, &'static str> { let x = try2!(maybe_num); x.checked_mul(2) .map(Some) .ok_or("overflow") }