Enum rustc_expand::base::SyntaxExtensionKind [−][src]
pub enum SyntaxExtensionKind {
Bang(Box<dyn ProcMacro + Sync + Send>),
LegacyBang(Box<dyn TTMacroExpander + Sync + Send>),
Attr(Box<dyn AttrProcMacro + Sync + Send>),
LegacyAttr(Box<dyn MultiItemModifier + Sync + Send>),
NonMacroAttr {
mark_used: bool,
},
Derive(Box<dyn MultiItemModifier + Sync + Send>),
LegacyDerive(Box<dyn MultiItemModifier + Sync + Send>),
}Expand description
A syntax extension kind.
Variants
Expand description
A token-based function-like macro.
LegacyBang(Box<dyn TTMacroExpander + Sync + Send>)Expand description
An AST-based function-like macro.
Attr(Box<dyn AttrProcMacro + Sync + Send>)Expand description
A token-based attribute macro.
LegacyAttr(Box<dyn MultiItemModifier + Sync + Send>)Expand description
An AST-based attribute macro.
Expand description
A trivial attribute “macro” that does nothing, only keeps the attribute and marks it as inert, thus making it ineligible for further expansion.
Show fields
Fields of NonMacroAttr
mark_used: boolExpand description
Suppresses the unused_attributes lint for this attribute.
Derive(Box<dyn MultiItemModifier + Sync + Send>)Expand description
A token-based derive macro.
LegacyDerive(Box<dyn MultiItemModifier + Sync + Send>)Expand description
An AST-based derive macro.