aboutsummaryrefslogtreecommitdiff
path: root/crates/ide/src/diagnostics
diff options
context:
space:
mode:
Diffstat (limited to 'crates/ide/src/diagnostics')
-rw-r--r--crates/ide/src/diagnostics/fixes.rs13
1 files changed, 10 insertions, 3 deletions
diff --git a/crates/ide/src/diagnostics/fixes.rs b/crates/ide/src/diagnostics/fixes.rs
index 7b05e87f2..c235b5bf4 100644
--- a/crates/ide/src/diagnostics/fixes.rs
+++ b/crates/ide/src/diagnostics/fixes.rs
@@ -13,7 +13,11 @@ use ide_db::{
13 source_change::{FileSystemEdit, SourceFileEdit}, 13 source_change::{FileSystemEdit, SourceFileEdit},
14 RootDatabase, 14 RootDatabase,
15}; 15};
16use syntax::{AstNode, Direction, T, algo, ast::{self, edit::IndentLevel, make}}; 16use syntax::{
17 algo,
18 ast::{self, edit::IndentLevel, make},
19 AstNode, Direction, T,
20};
17use text_edit::TextEdit; 21use text_edit::TextEdit;
18 22
19use crate::{diagnostics::Fix, references::rename::rename_with_semantics, FilePosition}; 23use crate::{diagnostics::Fix, references::rename::rename_with_semantics, FilePosition};
@@ -102,7 +106,9 @@ impl DiagnosticWithFix for RemoveThisSemicolon {
102 fn fix(&self, sema: &Semantics<RootDatabase>) -> Option<Fix> { 106 fn fix(&self, sema: &Semantics<RootDatabase>) -> Option<Fix> {
103 let root = sema.db.parse_or_expand(self.file)?; 107 let root = sema.db.parse_or_expand(self.file)?;
104 108
105 let semicolon = self.expr.to_node(&root) 109 let semicolon = self
110 .expr
111 .to_node(&root)
106 .syntax() 112 .syntax()
107 .siblings_with_tokens(Direction::Next) 113 .siblings_with_tokens(Direction::Next)
108 .filter_map(|it| it.into_token()) 114 .filter_map(|it| it.into_token())
@@ -110,7 +116,8 @@ impl DiagnosticWithFix for RemoveThisSemicolon {
110 .text_range(); 116 .text_range();
111 117
112 let edit = TextEdit::delete(semicolon); 118 let edit = TextEdit::delete(semicolon);
113 let source_change = SourceFileEdit { file_id: self.file.original_file(sema.db), edit }.into(); 119 let source_change =
120 SourceFileEdit { file_id: self.file.original_file(sema.db), edit }.into();
114 121
115 Some(Fix::new("Remove this semicolon", source_change, semicolon)) 122 Some(Fix::new("Remove this semicolon", source_change, semicolon))
116 } 123 }