@@ -64,7 +64,7 @@ crate struct DocContext<'tcx> {
64
64
crate ct_substs : RefCell < FxHashMap < DefId , clean:: Constant > > ,
65
65
/// Table synthetic type parameter for `impl Trait` in argument position -> bounds
66
66
crate impl_trait_bounds : RefCell < FxHashMap < ImplTraitParam , Vec < clean:: GenericBound > > > ,
67
- crate fake_def_ids : RefCell < FxHashMap < CrateNum , DefIndex > > ,
67
+ crate fake_def_ids : FxHashMap < CrateNum , DefIndex > ,
68
68
/// Auto-trait or blanket impls processed so far, as `(self_ty, trait_def_id)`.
69
69
// FIXME(eddyb) make this a `ty::TraitRef<'tcx>` set.
70
70
crate generated_synthetics : RefCell < FxHashSet < ( Ty < ' tcx > , DefId ) > > ,
@@ -137,16 +137,14 @@ impl<'tcx> DocContext<'tcx> {
137
137
/// [`RefCell`]: std::cell::RefCell
138
138
/// [`Debug`]: std::fmt::Debug
139
139
/// [`clean::Item`]: crate::clean::types::Item
140
- crate fn next_def_id ( & self , crate_num : CrateNum ) -> DefId {
141
- let mut fake_ids = self . fake_def_ids . borrow_mut ( ) ;
142
-
143
- let def_index = match fake_ids. entry ( crate_num) {
140
+ crate fn next_def_id ( & mut self , crate_num : CrateNum ) -> DefId {
141
+ let def_index = match self . fake_def_ids . entry ( crate_num) {
144
142
Entry :: Vacant ( e) => {
145
143
let num_def_idx = {
146
144
let num_def_idx = if crate_num == LOCAL_CRATE {
147
145
self . tcx . hir ( ) . definitions ( ) . def_path_table ( ) . num_def_ids ( )
148
146
} else {
149
- self . enter_resolver ( |r| r. cstore ( ) . num_def_ids ( crate_num) )
147
+ self . resolver . borrow_mut ( ) . access ( |r| r. cstore ( ) . num_def_ids ( crate_num) )
150
148
} ;
151
149
152
150
DefIndex :: from_usize ( num_def_idx)
0 commit comments