code / tomo

Lines41.3K C23.7K Markdown9.7K YAML5.0K Tomo2.3K
7 others 763
Python231 Shell230 make212 INI47 Text21 SVG16 Lua6
(16 lines)
1 // This file defines how to compile functions
3 #pragma once
5 #include "../ast.h"
6 #include "../environment.h"
7 #include "../stdlib/datatypes.h"
9 Text_t compile_function_declaration(env_t *env, ast_t *ast);
10 Text_t compile_convert_declaration(env_t *env, ast_t *ast);
11 Text_t compile_function_call(env_t *env, ast_t *ast);
12 Text_t compile_arguments(env_t *env, ast_t *call_ast, arg_t *spec_args, arg_ast_t *call_args);
13 Text_t compile_lambda(env_t *env, ast_t *ast);
14 Table_t get_closed_vars(env_t *env, arg_ast_t *args, ast_t *block);
15 Text_t compile_function(env_t *env, Text_t name_code, ast_t *ast, Text_t *staticdefs);
16 Text_t compile_method_call(env_t *env, ast_t *ast);