macro_rules! selector { (*) => { ... }; (?$filter:expr) => { ... }; (slice $slice:expr) => { ... }; ($name:ident) => { ... }; ([$name:ident]) => { ... }; ([$index:expr]) => { ... }; }