Skip to content

Commit 65b6c5b

Browse files
committed
允许 rename 字段时可以从表影响所有
```lua ---@Class T ---@field abc fun(self: T) 注释注释 ---@type T local t = { abc = function(self) -- 在此重命名 abc 可以影响所有引用 end, } t.abc = function(self) end ```
1 parent 6adfcf7 commit 65b6c5b

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

crates/emmylua_ls/src/handlers/rename/rename_member.rs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@ use emmylua_code_analysis::{
66
use emmylua_parser::{LuaAst, LuaAstNode, LuaAstToken, LuaNameToken, LuaSyntaxNode};
77
use lsp_types::Uri;
88

9+
use crate::handlers::hover::find_member_origin_owner;
10+
911
pub fn rename_member_references(
1012
semantic_model: &SemanticModel,
1113
compilation: &LuaCompilation,
@@ -23,7 +25,8 @@ pub fn rename_member_references(
2325
.get_reference_index()
2426
.get_index_references(&key)?;
2527

26-
let property_owner = LuaSemanticDeclId::Member(member_id);
28+
let property_owner = find_member_origin_owner(semantic_model, member_id)
29+
.unwrap_or(LuaSemanticDeclId::Member(member_id));
2730
let mut semantic_cache = HashMap::new();
2831
for in_filed_syntax_id in index_references {
2932
let semantic_model =

0 commit comments

Comments
 (0)