diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/index/util.odin | 13 | ||||
| -rw-r--r-- | src/server/completion.odin | 2 |
2 files changed, 12 insertions, 3 deletions
diff --git a/src/index/util.odin b/src/index/util.odin index 7b41918..a5bf435 100644 --- a/src/index/util.odin +++ b/src/index/util.odin @@ -100,6 +100,7 @@ build_string_node :: proc(node: ^ast.Node, builder: ^strings.Builder) { build_string(n.high, builder); case Field_Value: build_string(n.field, builder); + strings.write_string(builder, ": "); build_string(n.value, builder); case Type_Cast: build_string(n.type, builder); @@ -110,10 +111,18 @@ build_string_node :: proc(node: ^ast.Node, builder: ^strings.Builder) { build_string(n.elems, builder); case Field: build_string(n.names, builder); + if len(n.names) > 0 { + strings.write_string(builder, ": "); + } build_string(n.type, builder); build_string(n.default_value, builder); case Field_List: - build_string(n.list, builder); + for field, i in n.list { + build_string(field, builder); + if len(n.list) - 1 != i { + strings.write_string(builder, ","); + } + } case Typeid_Type: build_string(n.specialization, builder); case Helper_Type: @@ -126,7 +135,9 @@ build_string_node :: proc(node: ^ast.Node, builder: ^strings.Builder) { build_string(n.type, builder); build_string(n.specialization, builder); case Proc_Type: + strings.write_string(builder, "proc("); build_string(n.params, builder); + strings.write_string(builder, ") -> "); build_string(n.results, builder); case Pointer_Type: strings.write_string(builder, "^"); diff --git a/src/server/completion.odin b/src/server/completion.odin index a57acb5..2d6832b 100644 --- a/src/server/completion.odin +++ b/src/server/completion.odin @@ -219,8 +219,6 @@ get_selector_completion :: proc(ast_context: ^AstContext, position_context: ^Doc } - //else if selector, ok := position_context.selector. - symbols := make([dynamic] index.Symbol, context.temp_allocator); selector: index.Symbol; |