Address PR comments
This commit is contained in:
parent
e62e926a8a
commit
aa8c982c3a
|
@ -25,6 +25,7 @@ use std::fmt;
|
||||||
use base_db::{AnchoredPathBuf, FileId, FileRange};
|
use base_db::{AnchoredPathBuf, FileId, FileRange};
|
||||||
use either::Either;
|
use either::Either;
|
||||||
use hir::{AsAssocItem, FieldSource, HasSource, InFile, ModuleSource, Semantics};
|
use hir::{AsAssocItem, FieldSource, HasSource, InFile, ModuleSource, Semantics};
|
||||||
|
use stdx::never;
|
||||||
use syntax::{
|
use syntax::{
|
||||||
ast::{self, HasName},
|
ast::{self, HasName},
|
||||||
AstNode, SyntaxKind, TextRange, T,
|
AstNode, SyntaxKind, TextRange, T,
|
||||||
|
@ -187,13 +188,20 @@ fn rename_mod(
|
||||||
source_change.push_file_system_edit(move_file);
|
source_change.push_file_system_edit(move_file);
|
||||||
}
|
}
|
||||||
|
|
||||||
if let Some(InFile { file_id, value: _ }) = module.declaration_source(sema.db) {
|
if let Some(src) = module.declaration_source(sema.db) {
|
||||||
let file_id = file_id.original_file(sema.db);
|
let file_id = src.file_id.original_file(sema.db);
|
||||||
if let Some(file_range) = Definition::Module(module).range_for_rename(sema) {
|
match src.value.name() {
|
||||||
source_change.insert_source_edit(
|
Some(name) => {
|
||||||
file_id,
|
if let Some(file_range) =
|
||||||
TextEdit::replace(file_range.range, new_name.to_string()),
|
src.with_value(name.syntax()).original_file_range_opt(sema.db)
|
||||||
)
|
{
|
||||||
|
source_change.insert_source_edit(
|
||||||
|
file_id,
|
||||||
|
TextEdit::replace(file_range.range, new_name.to_string()),
|
||||||
|
)
|
||||||
|
};
|
||||||
|
}
|
||||||
|
_ => never!("Module source node is missing a name"),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue