macro_rules! pattern {
( ? $x:tt ) => { ... };
( $f:tt ( $( $sub:tt )+ ) ) => { ... };
( $f:tt () ) => { ... };
( $f:tt ) => { ... };
}macro_rules! pattern {
( ? $x:tt ) => { ... };
( $f:tt ( $( $sub:tt )+ ) ) => { ... };
( $f:tt () ) => { ... };
( $f:tt ) => { ... };
}