[−][src]Module syntax_pos::hygiene
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
Machinery for hygienic macros, inspired by the MTWT[1]
paper.
[1]
Matthew Flatt, Ryan Culpepper, David Darais, and Robert Bruce Findler. 2012.
Macros that work together: Compile-time bindings, partial expansion,
and definition contexts. J. Funct. Program. 22, 2 (March 2012), 181-216.
DOI=10.1017/S0956796812000093 https://doi.org/10.1017/S0956796812000093
Structs
ExpnInfo |
[ Experimental ] Extra information for tracking spans of macro and syntax sugar expansion |
HygieneData |
[ Experimental ]
|
Mark |
[ Experimental ] A mark is a unique id associated with a macro expansion. |
MarkData |
[ Experimental ]
|
SyntaxContext |
[ Experimental ] A SyntaxContext represents a chain of macro expansions (represented by marks). |
SyntaxContextData |
[ Experimental ]
|
Enums
CompilerDesugaringKind |
[ Experimental ] The kind of compiler desugaring. |
ExpnFormat |
[ Experimental ] The source of expansion. |
Transparency |
[ Experimental ] A property of a macro expansion that determines how identifiers produced by that expansion are resolved. |
Functions
clear_markings |
[ Experimental ]
|
default_edition |
[ Experimental ]
|
set_default_edition |
[ Experimental ]
|