macro_rules! template {
    (Word) => { ... };
    (List: $descr: expr) => { ... };
    (NameValueStr: $descr: expr) => { ... };
    (Word, List: $descr: expr) => { ... };
    (Word, NameValueStr: $descr: expr) => { ... };
    (List: $descr1: expr, NameValueStr: $descr2: expr) => { ... };
    (Word, List: $descr1: expr, NameValueStr: $descr2: expr) => { ... };
    (@ $word: expr, $list: expr, $name_value_str: expr) => { ... };
}
Expand description

A convenience macro for constructing attribute templates. E.g., template!(Word, List: "description") means that the attribute supports forms #[attr] and #[attr(description)].