macro_rules! rect { (x: $x:expr, y: $y:expr, w: $w:expr, h: $h:expr $(,)?) => { ... }; (x: $x:expr, y: $y:expr, width: $w:expr, height: $h:expr $(,)?) => { ... }; (pos: $p:expr, size: $s:expr $(,)?) => { ... }; () => { ... }; }