diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/doc/rustc-dev-guide/src/name-resolution.md | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/doc/rustc-dev-guide/src/name-resolution.md b/src/doc/rustc-dev-guide/src/name-resolution.md index 431a8f1d3fd..f3aacba0017 100644 --- a/src/doc/rustc-dev-guide/src/name-resolution.md +++ b/src/doc/rustc-dev-guide/src/name-resolution.md @@ -19,8 +19,8 @@ namespaces and therefore can co-exist. The name resolution in Rust is a two-phase process. In the first phase, which runs during macro expansion, we build a tree of modules and resolve imports. Macro -expansion and name resolution communicate with each other via the `Resolver` -trait, defined in `librustc_ast`. +expansion and name resolution communicate with each other via the +[`Resolver`] trait. The input to the second phase is the syntax tree, produced by parsing input files and expanding macros. This phase produces links from all the names in the @@ -36,6 +36,7 @@ The name resolution lives in the `librustc_resolve` crate, with the meat in `lib.rs` and some helpers or symbol-type specific logic in the other modules. [`Resolver::resolve_crate`]: https://doc.rust-lang.org/nightly/nightly-rustc/rustc_resolve/struct.Resolver.html#method.resolve_crate +[`Resolver`]: https://doc.rust-lang.org/nightly/nightly-rustc/rustc_ast_lowering/trait.Resolver.html ## Namespaces |
