@@ -55,7 +55,7 @@ use crate::{
55
55
item_scope:: BuiltinShadowMode ,
56
56
item_tree:: FieldsShape ,
57
57
lang_item:: LangItem ,
58
- nameres:: { DefMap , LocalDefMap , MacroSubNs } ,
58
+ nameres:: { DefMap , LocalDefMap , MacroSubNs , block_def_map } ,
59
59
type_ref:: {
60
60
ArrayType , ConstRef , FnType , LifetimeRef , LifetimeRefId , Mutability , PathId , Rawness ,
61
61
RefType , TraitBoundModifier , TraitRef , TypeBound , TypeRef , TypeRefId , UseArgRef ,
@@ -442,8 +442,8 @@ pub(crate) fn lower_function(
442
442
pub struct ExprCollector < ' db > {
443
443
db : & ' db dyn DefDatabase ,
444
444
expander : Expander ,
445
- def_map : Arc < DefMap > ,
446
- local_def_map : Arc < LocalDefMap > ,
445
+ def_map : & ' db DefMap ,
446
+ local_def_map : & ' db LocalDefMap ,
447
447
module : ModuleId ,
448
448
pub store : ExpressionStoreBuilder ,
449
449
pub ( crate ) source_map : ExpressionStoreSourceMap ,
@@ -550,7 +550,7 @@ impl ExprCollector<'_> {
550
550
current_file_id : HirFileId ,
551
551
) -> ExprCollector < ' _ > {
552
552
let ( def_map, local_def_map) = module. local_def_map ( db) ;
553
- let expander = Expander :: new ( db, current_file_id, & def_map) ;
553
+ let expander = Expander :: new ( db, current_file_id, def_map) ;
554
554
ExprCollector {
555
555
db,
556
556
module,
@@ -1939,7 +1939,7 @@ impl ExprCollector<'_> {
1939
1939
let resolver = |path : & _ | {
1940
1940
self . def_map
1941
1941
. resolve_path (
1942
- & self . local_def_map ,
1942
+ self . local_def_map ,
1943
1943
self . db ,
1944
1944
module,
1945
1945
path,
@@ -2155,12 +2155,12 @@ impl ExprCollector<'_> {
2155
2155
} ;
2156
2156
2157
2157
let ( module, def_map) =
2158
- match block_id. map ( |block_id| ( self . db . block_def_map ( block_id) , block_id) ) {
2158
+ match block_id. map ( |block_id| ( block_def_map ( self . db , block_id) , block_id) ) {
2159
2159
Some ( ( def_map, block_id) ) => {
2160
2160
self . store . block_scopes . push ( block_id) ;
2161
2161
( def_map. module_id ( DefMap :: ROOT ) , def_map)
2162
2162
}
2163
- None => ( self . module , self . def_map . clone ( ) ) ,
2163
+ None => ( self . module , self . def_map ) ,
2164
2164
} ;
2165
2165
let prev_def_map = mem:: replace ( & mut self . def_map , def_map) ;
2166
2166
let prev_local_module = mem:: replace ( & mut self . module , module) ;
@@ -2239,7 +2239,7 @@ impl ExprCollector<'_> {
2239
2239
// This could also be a single-segment path pattern. To
2240
2240
// decide that, we need to try resolving the name.
2241
2241
let ( resolved, _) = self . def_map . resolve_path (
2242
- & self . local_def_map ,
2242
+ self . local_def_map ,
2243
2243
self . db ,
2244
2244
self . module . local_id ,
2245
2245
& name. clone ( ) . into ( ) ,
0 commit comments