Macros§
Structs§
- Derive
Resolution - Dummy
Result - Fill-in macro expansion result, to allow compilation to continue after hitting errors.
- Expansion
Data - ExtCtxt
- One of these is made during expansion and incrementally updated as we go;
when a macro expansion occurs, the resulting nodes have the
backtrace() -> expn_data
of their expansion context stored into their span. - Indeterminate
- Error type that denotes indeterminacy.
- MacEager
MacResult
implementation for the common case where you’ve already built each form of AST that you might return.- Module
Data - Syntax
Extension - A struct representing a macro definition in “lowered” form ready for expansion.
Enums§
- Annotatable
- Expand
Result - Result of an expansion that may need to be retried.
Consider using this for non-
MultiItemModifier
expanders as well. - Syntax
Extension Kind - A syntax extension kind.
Traits§
- Attr
Proc Macro - Bang
Proc Macro - Glob
Delegation Expander - Lint
Store Expand - MacResult
- The result of a macro expansion. The return values of the various methods are spliced into the AST at the callsite of the macro.
- Multi
Item Modifier - Resolver
Expand - TTMacro
Expander - Represents a thing that maps token trees to Macro Results
Functions§
- ann_
pretty_ 🔒printing_ compatibility_ hack - nt_
pretty_ 🔒printing_ compatibility_ hack - parse_
macro_ name_ and_ helper_ attrs - pretty_
printing_ 🔒compatibility_ hack - If this item looks like a specific enums from
rental
, emit a fatal error. See #73345 and #83125 for more details. FIXME(#73933): Remove this eventually. - resolve_
path - Resolves a
path
mentioned inside Rust code, returning an absolute path.