aboutsummaryrefslogtreecommitdiff
path: root/crates/hir/src/semantics/source_to_def.rs
diff options
context:
space:
mode:
authorbors[bot] <26634292+bors[bot]@users.noreply.github.com>2021-01-18 20:12:11 +0000
committerGitHub <[email protected]>2021-01-18 20:12:11 +0000
commit0791c8e44c6fd1e7519df003dcb8c9e156916f46 (patch)
tree28468414f1ba4183859ebdf78c31f23b87ebda96 /crates/hir/src/semantics/source_to_def.rs
parent8164e2ea31ed0c169bc295acb6e13650576e5366 (diff)
parent57a82fb05b46fd028c0b971dc6ce317db3682146 (diff)
Merge #7336
7336: Rename `CrateDefMap` to `DefMap` r=matklad a=jonas-schievink I propose handling local items by computing a `DefMap` for every block expression, using the regular (early) name resolution algorithm. The result of that will be a `DefMap` that has a reference to the parent `DefMap`, which is either the one computed for the containing block expression, or the crate's root `DefMap`. Name resolution will fall back to a name in the parent `DefMap` if it cannot be resolved in the inner block. The `DefMap`s computed for block expressions will go through a separate query that can be garbage-collected much more aggressively, since these `DefMap`s should be cheap to compute and are never part of a crate's public API. The first step towards that is to make `CrateDefMap` not specific to crates anymore, hence this rename (if this plans sounds reasonable). cc https://github.com/rust-analyzer/rust-analyzer/issues/7325 and https://github.com/rust-analyzer/rust-analyzer/issues/1165 Co-authored-by: Jonas Schievink <[email protected]>
Diffstat (limited to 'crates/hir/src/semantics/source_to_def.rs')
0 files changed, 0 insertions, 0 deletions