diff options
| author | ice1000 <ice1000kotlin@foxmail.com> | 2022-08-29 20:27:53 +0000 |
|---|---|---|
| committer | ice1000 <ice1000kotlin@foxmail.com> | 2022-09-02 21:18:36 +0000 |
| commit | 37e20decadb4aecbae3b88502d4c130c9d9f31f4 (patch) | |
| tree | 890972262cb520708d8948dc4f0f0cf02ec8929f | |
| parent | 277df02ff562e152baac5cba93844d7499d806b5 (diff) | |
| download | rust-37e20decadb4aecbae3b88502d4c130c9d9f31f4.tar.gz rust-37e20decadb4aecbae3b88502d4c130c9d9f31f4.zip | |
Address comments
| -rw-r--r-- | crates/ide-assists/src/handlers/inline_type_alias.rs | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/crates/ide-assists/src/handlers/inline_type_alias.rs b/crates/ide-assists/src/handlers/inline_type_alias.rs index a7f1cf49e3a..95aeb09437f 100644 --- a/crates/ide-assists/src/handlers/inline_type_alias.rs +++ b/crates/ide-assists/src/handlers/inline_type_alias.rs @@ -62,6 +62,7 @@ pub(crate) fn inline_type_alias_uses(acc: &mut Assists, ctx: &AssistContext<'_>) name.syntax().text_range(), |builder| { let usages = usages.all(); + let mut definition_deleted = false; let mut inline_refs_for_file = |file_id, refs: Vec<FileReference>| { builder.edit_file(file_id); @@ -79,14 +80,19 @@ pub(crate) fn inline_type_alias_uses(acc: &mut Assists, ctx: &AssistContext<'_>) }) { builder.replace(target, replacement); } + + if file_id == ctx.file_id() { + builder.delete(ast_alias.syntax().text_range()); + definition_deleted = true; + } }; for (file_id, refs) in usages.into_iter() { inline_refs_for_file(file_id, refs); } - - builder.edit_file(ctx.file_id()); - builder.delete(ast_alias.syntax().text_range()); + if !definition_deleted { + builder.delete(ast_alias.syntax().text_range()); + } }, ) } |
