[][src]Crate rustc_ast

The Rust parser and macro expander.

Note

This API is completely unstable and subject to change.

Re-exports

pub use self::ast::*;

Modules

ast

The Rust abstract syntax tree module.

attr

Functions dealing with attributes and meta items.

crate_disambiguator
entry
expand

Definitions shared by macros / syntax extensions and e.g. librustc_middle.

mut_visit

A MutVisitor represents an AST modification; it accepts an AST piece and and mutates it in place. So, for instance, macro expansion is a MutVisitor that walks over an AST and modifies it.

node_id
ptr

The AST pointer.

token
tokenstream

Token Streams

util
visit

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, call visit::walk_* to apply the default traversal algorithm, or prevent deeper traversal by doing nothing.

Macros

unwrap_or
walk_list

Traits

HashStableContext

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 librustc_middle.