diff options
Diffstat (limited to 'src/server/documentation.odin')
| -rw-r--r-- | src/server/documentation.odin | 27 |
1 files changed, 24 insertions, 3 deletions
diff --git a/src/server/documentation.odin b/src/server/documentation.odin index 2f73ed2..dc0784d 100644 --- a/src/server/documentation.odin +++ b/src/server/documentation.odin @@ -372,15 +372,36 @@ write_short_signature :: proc(sb: ^strings.Builder, ast_context: ^AstContext, sy write_node(sb, ast_context, v.expr, "", short_signature = true) return case SymbolDynamicArrayValue: - fmt.sbprintf(sb, "%s[dynamic]", pointer_prefix) + if .SoaPointer in symbol.flags { + strings.write_string(sb, "#soa") + } + strings.write_string(sb, pointer_prefix) + if .Soa in symbol.flags { + strings.write_string(sb, "#soa") + } + strings.write_string(sb, "[dynamic]") write_node(sb, ast_context, v.expr, "", short_signature = true) return case SymbolSliceValue: - fmt.sbprintf(sb, "%s[]", pointer_prefix) + if .SoaPointer in symbol.flags { + strings.write_string(sb, "#soa") + } + strings.write_string(sb, pointer_prefix) + if .Soa in symbol.flags { + strings.write_string(sb, "#soa") + } + strings.write_string(sb, "[]") write_node(sb, ast_context, v.expr, "", short_signature = true) return case SymbolFixedArrayValue: - fmt.sbprintf(sb, "%s[", pointer_prefix) + if .SoaPointer in symbol.flags { + strings.write_string(sb, "#soa") + } + strings.write_string(sb, pointer_prefix) + if .Soa in symbol.flags { + strings.write_string(sb, "#soa") + } + strings.write_string(sb, "[") build_string_node(v.len, sb, false) strings.write_string(sb, "]") write_node(sb, ast_context, v.expr, "", short_signature = true) |