macro_rules! define_monoid { ($Name:ident, $t:ty, |$x:ident, $y:ident| $op:expr, $unit:expr) => { ... }; }