Skip to content

Commit 86940be

Browse files
authored
Rollup merge of rust-lang#82382 - camelid:remove-fake_def_ids-refcell, r=jyn514
rustdoc: Remove `fake_def_ids` RefCell
2 parents 50a2de2 + 45673e2 commit 86940be

File tree

1 file changed

+4
-6
lines changed

1 file changed

+4
-6
lines changed

src/librustdoc/core.rs

+4-6
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ crate struct DocContext<'tcx> {
6464
crate ct_substs: RefCell<FxHashMap<DefId, clean::Constant>>,
6565
/// Table synthetic type parameter for `impl Trait` in argument position -> bounds
6666
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>,
6868
/// Auto-trait or blanket impls processed so far, as `(self_ty, trait_def_id)`.
6969
// FIXME(eddyb) make this a `ty::TraitRef<'tcx>` set.
7070
crate generated_synthetics: RefCell<FxHashSet<(Ty<'tcx>, DefId)>>,
@@ -137,16 +137,14 @@ impl<'tcx> DocContext<'tcx> {
137137
/// [`RefCell`]: std::cell::RefCell
138138
/// [`Debug`]: std::fmt::Debug
139139
/// [`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) {
144142
Entry::Vacant(e) => {
145143
let num_def_idx = {
146144
let num_def_idx = if crate_num == LOCAL_CRATE {
147145
self.tcx.hir().definitions().def_path_table().num_def_ids()
148146
} 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))
150148
};
151149

152150
DefIndex::from_usize(num_def_idx)

0 commit comments

Comments
 (0)