@@ -137,7 +137,7 @@ pub struct TraitImpls {
137
137
138
138
impl TraitImpls {
139
139
pub ( crate ) fn trait_impls_in_crate_query ( db : & dyn HirDatabase , krate : CrateId ) -> Arc < Self > {
140
- let _p = profile:: span ( "trait_impls_in_crate_query" ) ;
140
+ let _p = profile:: span ( "trait_impls_in_crate_query" ) . detail ( || format ! ( "{krate:?}" ) ) ;
141
141
let mut impls = Self { map : FxHashMap :: default ( ) } ;
142
142
143
143
let crate_def_map = db. crate_def_map ( krate) ;
@@ -162,7 +162,7 @@ impl TraitImpls {
162
162
}
163
163
164
164
pub ( crate ) fn trait_impls_in_deps_query ( db : & dyn HirDatabase , krate : CrateId ) -> Arc < Self > {
165
- let _p = profile:: span ( "trait_impls_in_deps_query" ) ;
165
+ let _p = profile:: span ( "trait_impls_in_deps_query" ) . detail ( || format ! ( "{krate:?}" ) ) ;
166
166
let crate_graph = db. crate_graph ( ) ;
167
167
let mut res = Self { map : FxHashMap :: default ( ) } ;
168
168
@@ -214,8 +214,7 @@ impl TraitImpls {
214
214
for ( trait_, other_map) in & other. map {
215
215
let map = self . map . entry ( * trait_) . or_default ( ) ;
216
216
for ( fp, impls) in other_map {
217
- let vec = map. entry ( * fp) . or_default ( ) ;
218
- vec. extend ( impls) ;
217
+ map. entry ( * fp) . or_default ( ) . extend ( impls) ;
219
218
}
220
219
}
221
220
}
@@ -584,7 +583,7 @@ pub fn lookup_impl_method(
584
583
name : & Name ,
585
584
) -> Option < FunctionId > {
586
585
let self_ty_fp = TyFingerprint :: for_trait_impl ( self_ty) ?;
587
- let trait_impls = TraitImpls :: trait_impls_in_deps_query ( db , env. krate ) ;
586
+ let trait_impls = db . trait_impls_in_deps ( env. krate ) ;
588
587
let impls = trait_impls. for_trait_and_self_ty ( trait_, self_ty_fp) ;
589
588
let mut table = InferenceTable :: new ( db, env. clone ( ) ) ;
590
589
find_matching_impl ( impls, & mut table, & self_ty) . and_then ( |data| {
0 commit comments