macro_rules! template {
(Word) => { ... };
(Word, $link: literal) => { ... };
(List: $descr: expr) => { ... };
(List: $descr: expr, $link: literal) => { ... };
(OneOf: $one_of: expr) => { ... };
(NameValueStr: [$($descr: literal),* $(,)?]) => { ... };
(NameValueStr: [$($descr: literal),* $(,)?], $link: literal) => { ... };
(NameValueStr: $descr: literal) => { ... };
(NameValueStr: $descr: literal, $link: literal) => { ... };
(Word, List: $descr: expr) => { ... };
(Word, List: $descr: expr, $link: literal) => { ... };
(Word, NameValueStr: $descr: expr) => { ... };
(Word, NameValueStr: $descr: expr, $link: literal) => { ... };
(List: $descr1: expr, NameValueStr: $descr2: expr) => { ... };
(List: $descr1: expr, NameValueStr: $descr2: expr, $link: literal) => { ... };
(Word, List: $descr1: expr, NameValueStr: $descr2: expr) => { ... };
(Word, List: $descr1: expr, NameValueStr: $descr2: expr, $link: literal) => { ... };
(@ $word: expr, $list: expr, $one_of: expr, $name_value_str: expr, $link: 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)]
.