Macro test
Source macro_rules! test {
($($(#[$($attr:tt)+])* fn $name:ident() $body:block)*) => { ... };
($(other:tt)*) => { ... };
(@meta_chain
=> [$($builtmeta:tt)*]
{$should_panic:expr, $ignore:expr}
fn $name:ident() $body:block
) => { ... };
(@meta_chain
[should_panic] $([$($rest:tt)+])* => [$($builtmeta:tt)*]
{$should_panic:expr, $ignore:expr}
fn $name:ident() $body:block
) => { ... };
(@meta_chain
[ignore] $([$($rest:tt)+])* => [$($builtmeta:tt)*]
{$should_panic:expr, $ignore:expr}
fn $name:ident() $body:block
) => { ... };
(@meta_chain
[$($first:tt)+] $([$($rest:tt)+])* => [$($builtmeta:tt)*]
{$should_panic:expr, $ignore:expr}
fn $name:ident() $body:block
) => { ... };
(@final
[$($builtmeta:tt)*]
{$should_panic:expr, $ignore:expr}
fn $name:ident() $body:block
) => { ... };
}