macro_rules! fgi_host_exp {
    { ( $args:expr, $argi:expr, $arity:expr ) { $($e:tt)+ } } => { ... };
    { ( $args:expr, $argi:expr, $arity:expr ) # $x:ident . $($e:tt)+ } => { ... };
    { ( $args:expr, $argi:expr, $arity:expr ) # ( mut $x:ident : $ty:ty ) . $($e:tt)+ } => { ... };
    { ( $args:expr, $argi:expr, $arity:expr ) # ( $x:ident : $ty:ty ) . $($e:tt)+ } => { ... };
    { ( $args:expr, $argi:expr, $arity:expr ) $($e:tt)+ } => { ... };
}
Expand description

Parser for host expressions: the bodies of host functions.

Unlike ordinary expressions, which expand into Fungi abstract syntax constructors, host expressions expand into Rust syntax.

host_e ::=
          rust_exp