Macro resynth::func_def

source ยท
macro_rules! func_def {
    (
        $name:expr
        ;
        $return_type:expr
        ;
        $($arg_name:expr => $arg_val:expr),+ $(,)*
        =>
        $($dfl_name:expr => $dfl_val:expr),* $(,)*
        =>
        $collect_type:expr
        ;
        $exec:expr
    ) => { ... };
    (
        $name:expr
        ;
        $return_type:expr
        ;
        =>
        $($dfl_name:expr => $dfl_val:expr),* $(,)*
        =>
        $collect_type:expr
        ;
        $exec:expr
    ) => { ... };
}