aboutsummaryrefslogtreecommitdiff
path: root/src/server/completion.odin
diff options
context:
space:
mode:
authorDaniel Gavin <danielgavin5@hotmail.com>2021-04-29 23:48:07 +0200
committerDaniel Gavin <danielgavin5@hotmail.com>2021-04-29 23:48:07 +0200
commit881de49df4dafb143b39afa5b5f012d98d8a7e7b (patch)
tree85d39e6dd2a8838d4db647c35366ebe9a79cd9f7 /src/server/completion.odin
parentef23ff512b31adf1e4a8519d1a2b9a713e1499dc (diff)
new test + fixed for range bug
Diffstat (limited to 'src/server/completion.odin')
-rw-r--r--src/server/completion.odin6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/server/completion.odin b/src/server/completion.odin
index 79c8d15..b237a17 100644
--- a/src/server/completion.odin
+++ b/src/server/completion.odin
@@ -935,14 +935,16 @@ get_identifier_completion :: proc(ast_context: ^AstContext, position_context: ^D
for result in top_results {
+ result := result;
+
item := CompletionItem {
label = result.symbol.name,
- detail = concatenate_symbols_information(ast_context, result.symbol, true),
};
if result.variable != nil {
if ok := resolve_ident_is_variable(ast_context, result.variable^); ok {
item.kind = .Variable;
+ result.symbol.type = .Variable;
} else {
item.kind = cast(CompletionItemKind)result.symbol.type;
}
@@ -950,6 +952,8 @@ get_identifier_completion :: proc(ast_context: ^AstContext, position_context: ^D
item.kind = cast(CompletionItemKind)result.symbol.type;
}
+ item.detail = concatenate_symbols_information(ast_context, result.symbol, true);
+
append(&items, item);
}