aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDaniel Gavin <danielgavin5@hotmail.com>2021-05-06 02:31:23 +0200
committerDaniel Gavin <danielgavin5@hotmail.com>2021-05-06 02:31:23 +0200
commit9007c6fa37dff74c8abe2555f9da0420f0a81294 (patch)
tree7f9a27890acf5821924fcf885ce42af4a8f2bd8c /src
parentf780d92a4083648561dd1f0973c884126c2a5416 (diff)
prepare with tests for ..any arguments
Diffstat (limited to 'src')
-rw-r--r--src/server/signature.odin3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/server/signature.odin b/src/server/signature.odin
index 64028c8..d084507 100644
--- a/src/server/signature.odin
+++ b/src/server/signature.odin
@@ -59,6 +59,7 @@ get_signature_information :: proc(document: ^Document, position: common.Position
return signature_help, true;
}
+ //TODO(should probably not be an ast.Expr, but ast.Call_Expr)
if position_context.call == nil {
return signature_help, true;
}
@@ -83,6 +84,7 @@ get_signature_information :: proc(document: ^Document, position: common.Position
signature_information := make([dynamic]SignatureInformation, context.temp_allocator);
if value, ok := call.value.(index.SymbolProcedureValue); ok {
+
parameters := make([]ParameterInformation, len(value.arg_types), context.temp_allocator);
for arg, i in value.arg_types {
@@ -96,6 +98,7 @@ get_signature_information :: proc(document: ^Document, position: common.Position
};
append(&signature_information, info);
} else if value, ok := call.value.(index.SymbolAggregateValue); ok {
+ //function overloaded procedures
for symbol in value.symbols {
info := SignatureInformation {
label = concatenate_symbols_information(&ast_context, symbol, false),