diff options
| author | Bruce Hill <bruce@bruce-hill.com> | 2025-03-21 21:43:51 -0400 |
|---|---|---|
| committer | Bruce Hill <bruce@bruce-hill.com> | 2025-03-21 21:43:51 -0400 |
| commit | dcf266228512e100e779fe72f2d4e9ebb605ffe6 (patch) | |
| tree | 6fb3cac1ee3647f08bca219949ed8dc61b5861f2 /src/compile.h | |
| parent | 9acea1807f5945c55445a16259386e4979203a1e (diff) | |
Move files into src/ and build into build/
Diffstat (limited to 'src/compile.h')
| -rw-r--r-- | src/compile.h | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/compile.h b/src/compile.h new file mode 100644 index 00000000..4256ab5d --- /dev/null +++ b/src/compile.h @@ -0,0 +1,24 @@ +#pragma once + +// Compilation functions + +#include <gc/cord.h> +#include <gc.h> +#include <stdio.h> + +#include "environment.h" + +CORD expr_as_text(CORD expr, type_t *t, CORD color); +CORD compile_file(env_t *env, ast_t *ast); +CORD compile_file_header(env_t *env, ast_t *ast); +CORD compile_declaration(type_t *t, const char *name); +CORD compile_type(type_t *t); +CORD compile(env_t *env, ast_t *ast); +CORD compile_namespace_header(env_t *env, const char *ns_name, ast_t *block); +CORD compile_statement(env_t *env, ast_t *ast); +CORD compile_statement_type_header(env_t *env, ast_t *ast); +CORD compile_statement_namespace_header(env_t *env, ast_t *ast); +CORD compile_type_info(type_t *t); +CORD compile_cli_arg_call(env_t *env, CORD fn_name, type_t *fn_type); + +// vim: ts=4 sw=0 et cino=L2,l1,(0,W4,m1,\:0 |
