The Rust parser and macro expander.
This API is completely unstable and subject to change.
The Rust abstract syntax tree module.
Functions dealing with attributes and meta items.
Definitions shared by macros / syntax extensions and e.g.
MutVisitor represents an AST modification; it accepts an AST piece and
and mutates it in place. So, for instance, macro expansion is a
that walks over an AST and modifies it.
The AST pointer.
AST walker. Each overridden visit method has full control over what
happens with its node, it can do its own traversal of the node’s children,
visit::walk_* to apply the default traversal algorithm, or prevent
deeper traversal by doing nothing.
Requirements for a
StableHashingContext to be used in this crate.
This is a hack to allow using the
HashStable_Generic derive macro
instead of implementing everything in