Enhance renaming to include identifiers that are generated from the original symbol

Co-authored-by: Jake Goulding <jake.goulding@integer32.com>
This commit is contained in:
Lukas Wirth 2025-05-30 10:41:08 +02:00
parent 04439c8cce
commit 42e8e4ac4e
6 changed files with 251 additions and 44 deletions

View file

@ -1,5 +1,5 @@
use hir::{CaseType, InFile, db::ExpandDatabase};
use ide_db::{assists::Assist, defs::NameClass};
use ide_db::{assists::Assist, defs::NameClass, rename::RenameDefinition};
use syntax::AstNode;
use crate::{
@ -44,7 +44,7 @@ fn fixes(ctx: &DiagnosticsContext<'_>, d: &hir::IncorrectCase) -> Option<Vec<Ass
let label = format!("Rename to {}", d.suggested_text);
let mut res = unresolved_fix("change_case", &label, frange.range);
if ctx.resolve.should_resolve(&res.id) {
let source_change = def.rename(&ctx.sema, &d.suggested_text);
let source_change = def.rename(&ctx.sema, &d.suggested_text, RenameDefinition::Yes);
res.source_change = Some(source_change.ok().unwrap_or_default());
}