aboutsummaryrefslogtreecommitdiff
path: root/src/server/analysis.odin
diff options
context:
space:
mode:
authorBrad Lewis <22850972+BradLewis@users.noreply.github.com>2025-07-15 10:20:00 -0400
committerBrad Lewis <22850972+BradLewis@users.noreply.github.com>2025-07-15 10:51:10 -0400
commitb5a7a087a5c91ef320eaabf5685604bda83eff68 (patch)
tree7d5d0300e647f0d54f325bb2abe9499bb50d3d3b /src/server/analysis.odin
parent5dcf2252629655d45ea4e3169f003b4010665fd6 (diff)
Resolve hover for procedure parameter names
Diffstat (limited to 'src/server/analysis.odin')
-rw-r--r--src/server/analysis.odin12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/server/analysis.odin b/src/server/analysis.odin
index 0c3178a..2219b98 100644
--- a/src/server/analysis.odin
+++ b/src/server/analysis.odin
@@ -670,7 +670,19 @@ get_proc_call_argument_type :: proc(value: SymbolProcedureValue, parameter_index
index += 1
}
}
+ return nil, false
+}
+get_proc_arg_type_from_name :: proc(v: SymbolProcedureValue, name: string) -> (^ast.Field, bool) {
+ for arg in v.arg_types {
+ for arg_name in arg.names {
+ if ident, ok := arg_name.derived.(^ast.Ident); ok {
+ if name == ident.name {
+ return arg, true
+ }
+ }
+ }
+ }
return nil, false
}