macro_rules! receive_value {
    ( $var:ident => $body:expr ) => { ... };
    ( ($var:ident $( : $type:ty )?) => $body:expr ) => { ... };
}