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} ,
@@ -742,13 +742,13 @@ fn classify_name_ref(
742
742
match sema. resolve_path( & segment. parent_path( ) . top_path( ) ) ? {
743
743
hir:: PathResolution :: Def ( def) => match def {
744
744
hir:: ModuleDef :: Function ( func) => {
745
- func . source( sema . db ) ?. value. generic_param_list( )
745
+ sema . source( func ) ?. value. generic_param_list( )
746
746
}
747
747
hir:: ModuleDef :: Adt ( adt) => {
748
- adt . source( sema . db ) ?. value. generic_param_list( )
748
+ sema . source( adt ) ?. value. generic_param_list( )
749
749
}
750
750
hir:: ModuleDef :: Variant ( variant) => {
751
- variant. parent_enum( sema. db) . source ( sema . db ) ?. value. generic_param_list( )
751
+ sema . source ( variant. parent_enum( sema. db) ) ?. value. generic_param_list( )
752
752
}
753
753
hir:: ModuleDef :: Trait ( trait_) => {
754
754
if let ast:: GenericArg :: AssocTypeArg ( arg) = & arg {
@@ -774,14 +774,14 @@ fn classify_name_ref(
774
774
return None ;
775
775
} else {
776
776
in_trait = Some ( trait_) ;
777
- trait_ . source( sema . db ) ?. value. generic_param_list( )
777
+ sema . source( trait_ ) ?. value. generic_param_list( )
778
778
}
779
779
}
780
780
hir:: ModuleDef :: TraitAlias ( trait_) => {
781
- trait_ . source( sema . db ) ?. value. generic_param_list( )
781
+ sema . source( trait_ ) ?. value. generic_param_list( )
782
782
}
783
783
hir:: ModuleDef :: TypeAlias ( ty_) => {
784
- ty_ . source( sema . db ) ?. value. generic_param_list( )
784
+ sema . source( ty_ ) ?. value. generic_param_list( )
785
785
}
786
786
_ => None ,
787
787
} ,
@@ -790,7 +790,7 @@ fn classify_name_ref(
790
790
} ,
791
791
ast:: MethodCallExpr ( call) => {
792
792
let func = sema. resolve_method_call( & call) ?;
793
- func . source( sema . db ) ?. value. generic_param_list( )
793
+ sema . source( func ) ?. value. generic_param_list( )
794
794
} ,
795
795
ast:: AssocTypeArg ( arg) => {
796
796
let trait_ = ast:: PathSegment :: cast( arg. syntax( ) . parent( ) ?. parent( ) ?) ?;
@@ -807,7 +807,7 @@ fn classify_name_ref(
807
807
} ,
808
808
_ => None ,
809
809
} ) ?;
810
- assoc_ty . source( sema . db ) ?. value. generic_param_list( )
810
+ sema . source( * assoc_ty ) ?. value. generic_param_list( )
811
811
}
812
812
_ => None ,
813
813
} ,
0 commit comments