mirror of
https://github.com/rust-lang/rust-analyzer.git
synced 2025-08-20 10:30:34 +00:00
Merge #9400
9400: fix: Fix renaming associated trait items with colliding names r=Veykril a=Veykril bors r+ Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
This commit is contained in:
commit
2ac1ffc0f3
2 changed files with 22 additions and 1 deletions
|
@ -1716,6 +1716,25 @@ impl Foo for () {
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_rename_trait_method_prefix_of_second() {
|
||||||
|
check(
|
||||||
|
"qux",
|
||||||
|
r#"
|
||||||
|
trait Foo {
|
||||||
|
fn foo$0() {}
|
||||||
|
fn foobar() {}
|
||||||
|
}
|
||||||
|
"#,
|
||||||
|
r#"
|
||||||
|
trait Foo {
|
||||||
|
fn qux() {}
|
||||||
|
fn foobar() {}
|
||||||
|
}
|
||||||
|
"#,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_rename_trait_const() {
|
fn test_rename_trait_const() {
|
||||||
let res = r"
|
let res = r"
|
||||||
|
|
|
@ -544,7 +544,9 @@ impl<'a> FindUsages<'a> {
|
||||||
let trait_ = mod_def
|
let trait_ = mod_def
|
||||||
.as_assoc_item(self.sema.db)?
|
.as_assoc_item(self.sema.db)?
|
||||||
.containing_trait_or_trait_impl(self.sema.db)?;
|
.containing_trait_or_trait_impl(self.sema.db)?;
|
||||||
(trait_ == this_trait).then(|| {
|
(trait_ == this_trait
|
||||||
|
&& self.def.name(self.sema.db) == mod_def.name(self.sema.db))
|
||||||
|
.then(|| {
|
||||||
let FileRange { file_id, range } = self.sema.original_range(name.syntax());
|
let FileRange { file_id, range } = self.sema.original_range(name.syntax());
|
||||||
let reference = FileReference {
|
let reference = FileReference {
|
||||||
range,
|
range,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue