File tree Expand file tree Collapse file tree 1 file changed +3
-4
lines changed
crates/ra_assists/src/assists Expand file tree Collapse file tree 1 file changed +3
-4
lines changed Original file line number Diff line number Diff line change 11use hir:: { db:: HirDatabase , ModPath } ;
22use ra_syntax:: {
33 ast:: { self , AstNode } ,
4- SyntaxKind :: { NAME_REF , USE_ITEM } ,
54 SyntaxNode ,
65} ;
76
@@ -33,11 +32,11 @@ pub(crate) fn auto_import<F: ImportsLocator>(
3332) -> Option < Assist > {
3433 let path_to_import: ast:: Path = ctx. find_node_at_offset ( ) ?;
3534 let path_to_import_syntax = path_to_import. syntax ( ) ;
36- if path_to_import_syntax. ancestors ( ) . find ( |ancestor| ancestor . kind ( ) == USE_ITEM ) . is_some ( ) {
35+ if path_to_import_syntax. ancestors ( ) . find_map ( ast :: UseItem :: cast ) . is_some ( ) {
3736 return None ;
3837 }
3938 let name_to_import =
40- path_to_import_syntax. descendants ( ) . find ( |child| child . kind ( ) == NAME_REF ) ? ;
39+ path_to_import_syntax. descendants ( ) . find_map ( ast :: NameRef :: cast ) ? . syntax ( ) . to_string ( ) ;
4140
4241 let module = path_to_import_syntax. ancestors ( ) . find_map ( ast:: Module :: cast) ;
4342 let position = match module. and_then ( |it| it. item_list ( ) ) {
@@ -54,7 +53,7 @@ pub(crate) fn auto_import<F: ImportsLocator>(
5453 }
5554
5655 let proposed_imports = imports_locator
57- . find_imports ( & name_to_import. to_string ( ) )
56+ . find_imports ( & name_to_import)
5857 . into_iter ( )
5958 . filter_map ( |module_def| module_with_name_to_import. find_use_path ( ctx. db , module_def) )
6059 . filter ( |use_path| !use_path. segments . is_empty ( ) )
You can’t perform that action at this time.
0 commit comments