diff options
| author | Brad Lewis <22850972+BradLewis@users.noreply.github.com> | 2025-06-07 12:32:01 -0400 |
|---|---|---|
| committer | Brad Lewis <22850972+BradLewis@users.noreply.github.com> | 2025-06-07 20:53:26 -0400 |
| commit | d150a6be3806f5d21fbfaa4ebf3c889cbc974574 (patch) | |
| tree | a8f4e9894800055b6578a4b26ff679a6c2c6b99f /src/server/analysis.odin | |
| parent | 35cf5697e1420456d17e67749e96e7f82c164a3b (diff) | |
Align types in the hover text
Diffstat (limited to 'src/server/analysis.odin')
| -rw-r--r-- | src/server/analysis.odin | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/server/analysis.odin b/src/server/analysis.odin index d1ce01e..0ef14e7 100644 --- a/src/server/analysis.odin +++ b/src/server/analysis.odin @@ -3805,12 +3805,18 @@ get_signature :: proc(ast_context: ^AstContext, ident: ast.Ident, symbol: Symbol if is_variable { return strings.concatenate({pointer_prefix, symbol.name}, ast_context.allocator) } else { + longestNameLen := 0 + for name in v.names { + if len(name) > longestNameLen { + longestNameLen = len(name) + } + } builder := strings.builder_make(ast_context.allocator) strings.write_string(&builder, "struct {\n") for i in 0..<len(v.names) { strings.write_string(&builder, "\t") strings.write_string(&builder, v.names[i]) - strings.write_string(&builder, ": ") + fmt.sbprintf(&builder, ":%*s", longestNameLen - len(v.names[i]) + 1, "") common.build_string_node(v.types[i], &builder, false) strings.write_string(&builder, ",\n") } |