1
1
//! Module responsible for analyzing the code surrounding the cursor for completion.
2
2
use std:: iter;
3
3
4
- use hir:: { HasSource , Semantics , Type , TypeInfo , Variant } ;
4
+ use hir:: { Semantics , Type , TypeInfo , Variant } ;
5
5
use ide_db:: { active_parameter:: ActiveParameter , RootDatabase } ;
6
6
use syntax:: {
7
7
algo:: { find_node_at_offset, non_trivia_sibling} ,
@@ -740,13 +740,13 @@ fn classify_name_ref(
740
740
match sema. resolve_path( & segment. parent_path( ) . top_path( ) ) ? {
741
741
hir:: PathResolution :: Def ( def) => match def {
742
742
hir:: ModuleDef :: Function ( func) => {
743
- func . source( sema . db ) ?. value. generic_param_list( )
743
+ sema . source( func ) ?. value. generic_param_list( )
744
744
}
745
745
hir:: ModuleDef :: Adt ( adt) => {
746
- adt . source( sema . db ) ?. value. generic_param_list( )
746
+ sema . source( adt ) ?. value. generic_param_list( )
747
747
}
748
748
hir:: ModuleDef :: Variant ( variant) => {
749
- variant. parent_enum( sema. db) . source ( sema . db ) ?. value. generic_param_list( )
749
+ sema . source ( variant. parent_enum( sema. db) ) ?. value. generic_param_list( )
750
750
}
751
751
hir:: ModuleDef :: Trait ( trait_) => {
752
752
if let ast:: GenericArg :: AssocTypeArg ( arg) = & arg {
@@ -772,14 +772,14 @@ fn classify_name_ref(
772
772
return None ;
773
773
} else {
774
774
in_trait = Some ( trait_) ;
775
- trait_ . source( sema . db ) ?. value. generic_param_list( )
775
+ sema . source( trait_ ) ?. value. generic_param_list( )
776
776
}
777
777
}
778
778
hir:: ModuleDef :: TraitAlias ( trait_) => {
779
- trait_ . source( sema . db ) ?. value. generic_param_list( )
779
+ sema . source( trait_ ) ?. value. generic_param_list( )
780
780
}
781
781
hir:: ModuleDef :: TypeAlias ( ty_) => {
782
- ty_ . source( sema . db ) ?. value. generic_param_list( )
782
+ sema . source( ty_ ) ?. value. generic_param_list( )
783
783
}
784
784
_ => None ,
785
785
} ,
@@ -788,7 +788,7 @@ fn classify_name_ref(
788
788
} ,
789
789
ast:: MethodCallExpr ( call) => {
790
790
let func = sema. resolve_method_call( & call) ?;
791
- func . source( sema . db ) ?. value. generic_param_list( )
791
+ sema . source( func ) ?. value. generic_param_list( )
792
792
} ,
793
793
ast:: AssocTypeArg ( arg) => {
794
794
let trait_ = ast:: PathSegment :: cast( arg. syntax( ) . parent( ) ?. parent( ) ?) ?;
@@ -805,7 +805,7 @@ fn classify_name_ref(
805
805
} ,
806
806
_ => None ,
807
807
} ) ?;
808
- assoc_ty . source( sema . db ) ?. value. generic_param_list( )
808
+ sema . source( * assoc_ty ) ?. value. generic_param_list( )
809
809
}
810
810
_ => None ,
811
811
} ,
0 commit comments