Macros§
- assign_
id π - Wraps a call to
walk_*
/walk_flat_map_*
for an AST node that supports attributes (see theAnnotatable
enum) This method assigns aNodeId
, and sets thatNodeId
as our current βlint node idβ. If a macro call is found inside this AST node, we will use this AST nodeβsNodeId
to emit lints associated with that macro (allowing#[allow]
/#[deny]
to be applied close to the macro invocation). - ast_
fragments π
Structs§
- Expansion
Config - Impl
Item πTag - Invocation
- Invocation
Collector π - Macro
Expander - Method
Receiver πTag - This struct is a hack to workaround unstable of
stmt_expr_attributes
. It can be removed once that feature is stabilized. - OptExpr
Tag π - Trait
Impl πItem Tag - Trait
Item πTag
Enums§
- AddSemicolon π
- AstFragment
- A fragment of AST that can be produced by a single macro expansion. Can also serve as an input and intermediate result for macro expansion operations.
- AstFragment
Kind - βDiscriminantβ of an AST fragment.
- Invocation
Kind - Supports
Macro Expansion
Traits§
- Invocation
Collector πNode - A trait implemented for all
AstFragment
nodes and providing all pieces of functionality used byInvocationCollector
.