aboutsummaryrefslogtreecommitdiff
path: root/crates/assists/src/handlers/extract_struct_from_enum_variant.rs
diff options
context:
space:
mode:
authorLukas Wirth <[email protected]>2020-09-03 15:23:33 +0100
committerLukas Wirth <[email protected]>2020-09-03 17:36:08 +0100
commit7de2a30f4080d0e6d8790882238bed1cb6ccbc21 (patch)
tree450b363b8f6646ca7cda39325e4524af7b9389e8 /crates/assists/src/handlers/extract_struct_from_enum_variant.rs
parent98e2f674e9e736720d1cd0a5b8c24e1fb10f64a1 (diff)
Fix import insertion breaking nested modules
Diffstat (limited to 'crates/assists/src/handlers/extract_struct_from_enum_variant.rs')
-rw-r--r--crates/assists/src/handlers/extract_struct_from_enum_variant.rs8
1 files changed, 4 insertions, 4 deletions
diff --git a/crates/assists/src/handlers/extract_struct_from_enum_variant.rs b/crates/assists/src/handlers/extract_struct_from_enum_variant.rs
index d9c50f25f..a50a57f1a 100644
--- a/crates/assists/src/handlers/extract_struct_from_enum_variant.rs
+++ b/crates/assists/src/handlers/extract_struct_from_enum_variant.rs
@@ -15,7 +15,7 @@ use crate::{
15 AssistContext, AssistId, AssistKind, Assists, 15 AssistContext, AssistId, AssistKind, Assists,
16}; 16};
17use ast::make; 17use ast::make;
18use insert_use::find_insert_use_container; 18use insert_use::ImportScope;
19 19
20// Assist: extract_struct_from_enum_variant 20// Assist: extract_struct_from_enum_variant
21// 21//
@@ -110,11 +110,11 @@ fn insert_import(
110 if let Some(mut mod_path) = mod_path { 110 if let Some(mut mod_path) = mod_path {
111 mod_path.segments.pop(); 111 mod_path.segments.pop();
112 mod_path.segments.push(variant_hir_name.clone()); 112 mod_path.segments.push(variant_hir_name.clone());
113 let container = find_insert_use_container(path.syntax(), ctx)?; 113 let scope = ImportScope::find_insert_use_container(path.syntax(), ctx)?;
114 let syntax = container.either(|l| l.syntax().clone(), |r| r.syntax().clone()); 114 let syntax = scope.as_syntax_node();
115 115
116 let new_syntax = insert_use( 116 let new_syntax = insert_use(
117 &syntax, 117 &scope,
118 make::path_from_text(&mod_path.to_string()), 118 make::path_from_text(&mod_path.to_string()),
119 Some(MergeBehaviour::Full), 119 Some(MergeBehaviour::Full),
120 ); 120 );