aboutsummaryrefslogtreecommitdiff
path: root/typecheck.h
diff options
context:
space:
mode:
authorBruce Hill <bruce@bruce-hill.com>2025-03-05 18:20:54 -0500
committerBruce Hill <bruce@bruce-hill.com>2025-03-05 18:20:54 -0500
commit147e0f0269440fce15d6b88a8a90627f3a3b2df2 (patch)
treebc33522ba71b5a2996fae22e102cce5046cf1333 /typecheck.h
parent2c4324670ff569ede360d13875c5e4b5720a626d (diff)
Overhaul of constructors, making it more consistent and correct. Also
changed T(), T, T_t, T_s type names to T(), T$$info, T$$type, T$$struct for unambiguity
Diffstat (limited to 'typecheck.h')
-rw-r--r--typecheck.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/typecheck.h b/typecheck.h
index b3f1dd66..1175e5fd 100644
--- a/typecheck.h
+++ b/typecheck.h
@@ -9,6 +9,7 @@
#include "ast.h"
#include "environment.h"
+#include "stdlib/datatypes.h"
#include "types.h"
type_t *parse_type_ast(env_t *env, type_ast_t *ast);
@@ -25,6 +26,7 @@ PUREFUNC bool can_be_mutated(env_t *env, ast_t *ast);
type_t *parse_type_string(env_t *env, const char *str);
type_t *get_method_type(env_t *env, ast_t *self, const char *name);
PUREFUNC bool is_constant(env_t *env, ast_t *ast);
+Table_t *get_arg_bindings(env_t *env, arg_t *spec_args, arg_ast_t *call_args, bool promotion_allowed);
bool is_valid_call(env_t *env, arg_t *spec_args, arg_ast_t *call_args, bool promotion_allowed);
// vim: ts=4 sw=0 et cino=L2,l1,(0,W4,m1,\:0