30f39fee9d
ast: Keep expansion status for out-of-line module items I.e. whether a module `mod foo;` is already loaded from a file or not. This is a pre-requisite to correctly treating inner attributes on such modules (https://github.com/rust-lang/rust/issues/81661). With this change AST structures for `mod` items diverge even more for AST structure for the crate root, which previously used `ast::Mod`. Therefore this PR removes `ast::Mod` from `ast::Crate` in the first commit, these two things are sufficiently different from each other, at least at syntactic level. Customization points for visiting a "`mod` item or crate root" were also removed from AST visitors (`fn visit_mod`). `ast::Mod` itself was refactored away in the second commit in favor of `ItemKind::Mod(Unsafe, ModKind)`. |
||
---|---|---|
.. | ||
liveness | ||
check_attr.rs | ||
check_const.rs | ||
dead.rs | ||
diagnostic_items.rs | ||
entry.rs | ||
hir_id_validator.rs | ||
hir_stats.rs | ||
intrinsicck.rs | ||
lang_items.rs | ||
layout_test.rs | ||
lib.rs | ||
lib_features.rs | ||
liveness.rs | ||
loops.rs | ||
naked_functions.rs | ||
reachable.rs | ||
region.rs | ||
stability.rs | ||
upvars.rs | ||
weak_lang_items.rs |