aboutsummaryrefslogtreecommitdiff
path: root/src/server/methods.odin
diff options
context:
space:
mode:
authorBrad Lewis <22850972+BradLewis@users.noreply.github.com>2025-08-22 21:54:44 -0400
committerBrad Lewis <22850972+BradLewis@users.noreply.github.com>2025-08-22 22:29:31 -0400
commit302698f2b878cf68302fee5a46a49086e17a83cc (patch)
tree1e0702d8a52781e928aebc3947660a977c9fe26f /src/server/methods.odin
parent52839df5fa441be5cf1cd0fb0e6b43cb5c6560c6 (diff)
Always collect private symbols and filter them when resolving
Diffstat (limited to 'src/server/methods.odin')
-rw-r--r--src/server/methods.odin11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/server/methods.odin b/src/server/methods.odin
index 8b05840..e05fded 100644
--- a/src/server/methods.odin
+++ b/src/server/methods.odin
@@ -19,7 +19,13 @@ import "src:common"
@(private)
-create_remove_edit :: proc(position_context: ^DocumentPositionContext, strip_leading_period := false) -> ([]TextEdit, bool) {
+create_remove_edit :: proc(
+ position_context: ^DocumentPositionContext,
+ strip_leading_period := false,
+) -> (
+ []TextEdit,
+ bool,
+) {
range, ok := get_range_from_selection_start_to_dot(position_context)
if !ok {
@@ -110,6 +116,9 @@ collect_methods :: proc(
for k, v in indexer.index.collection.packages {
if symbols, ok := &v.methods[method]; ok {
for &symbol in symbols {
+ if should_skip_private_symbol(symbol, ast_context.fullpath) {
+ continue
+ }
resolve_unresolved_symbol(ast_context, &symbol)
range, ok := get_range_from_selection_start_to_dot(position_context)