Use a HashSet instead of Vec
This commit is contained in:
parent
0347480151
commit
eea2f879af
@ -581,13 +581,11 @@ pub fn record_extern_trait(cx: &DocContext<'_>, did: DefId) {
|
||||
}
|
||||
}
|
||||
|
||||
cx.active_extern_traits.borrow_mut().push(did);
|
||||
cx.active_extern_traits.borrow_mut().insert(did);
|
||||
|
||||
debug!("record_extern_trait: {:?}", did);
|
||||
let trait_ = build_external_trait(cx, did);
|
||||
|
||||
{
|
||||
cx.external_traits.borrow_mut().insert(did, trait_);
|
||||
}
|
||||
cx.active_extern_traits.borrow_mut().remove_item(&did);
|
||||
cx.external_traits.borrow_mut().insert(did, trait_);
|
||||
cx.active_extern_traits.borrow_mut().remove(&did);
|
||||
}
|
||||
|
@ -51,7 +51,7 @@ pub struct DocContext<'tcx> {
|
||||
pub external_traits: Rc<RefCell<FxHashMap<DefId, clean::Trait>>>,
|
||||
/// Used while populating `external_traits` to ensure we don't process the same trait twice at
|
||||
/// the same time.
|
||||
pub active_extern_traits: RefCell<Vec<DefId>>,
|
||||
pub active_extern_traits: RefCell<FxHashSet<DefId>>,
|
||||
// The current set of type and lifetime substitutions,
|
||||
// for expanding type aliases at the HIR level:
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user