aboutsummaryrefslogtreecommitdiff
path: root/src/server
diff options
context:
space:
mode:
authorBrad Lewis <22850972+BradLewis@users.noreply.github.com>2025-07-02 18:23:38 -0400
committerBrad Lewis <22850972+BradLewis@users.noreply.github.com>2025-07-02 18:23:38 -0400
commitca082db35a4e5df4b642401993bac152b1aaccec (patch)
tree21c0f36c56a821bcc71c2cb4dd9407346258b9f9 /src/server
parent893a1e77339c6f7e2ff4bcc286e67c1bf00447fe (diff)
Improve renaming enum fields across files
Diffstat (limited to 'src/server')
-rw-r--r--src/server/collector.odin13
-rw-r--r--src/server/references.odin1
2 files changed, 3 insertions, 11 deletions
diff --git a/src/server/collector.odin b/src/server/collector.odin
index 5888326..b2c2d66 100644
--- a/src/server/collector.odin
+++ b/src/server/collector.odin
@@ -198,16 +198,9 @@ collect_enum_fields :: proc(
//ERROR no hover on n in the for, but elsewhere is fine
for n in fields {
- append(&ranges, common.get_token_range(n, file.src))
- if ident, ok := n.derived.(^ast.Ident); ok {
- append(&names, get_index_unique_string(collection, ident.name))
- } else if field, ok := n.derived.(^ast.Field_Value); ok {
- if ident, ok := field.field.derived.(^ast.Ident); ok {
- append(&names, get_index_unique_string(collection, ident.name))
- } else if binary, ok := field.field.derived.(^ast.Binary_Expr); ok {
- append(&names, get_index_unique_string(collection, binary.left.derived.(^ast.Ident).name))
- }
- }
+ name, range := get_enum_field_name_and_range(n, file.src)
+ append(&names, strings.clone(name, collection.allocator))
+ append(&ranges, range)
}
value := SymbolEnumValue {
diff --git a/src/server/references.odin b/src/server/references.odin
index 92cec09..fed58bd 100644
--- a/src/server/references.odin
+++ b/src/server/references.odin
@@ -237,7 +237,6 @@ resolve_references :: proc(
uri, _ := common.parse_uri(workspace.uri, context.temp_allocator)
filepath.walk(uri.path, walk_directories, document)
}
- } else {
}
reset_ast_context(ast_context)