|
Luma 0.1.0
A low-level compiled alternative to C, C++, and more!
|

Functions | |
| AstNode * | create_program_node (ArenaAllocator *arena, AstNode **statements, size_t stmt_count, size_t line, size_t column) |
| AstNode * | create_expr_stmt (ArenaAllocator *arena, Expr *expression, size_t line, size_t column) |
| AstNode * | create_var_decl_stmt (ArenaAllocator *arena, const char *name, const char *doc_comment, AstNode *var_type, Expr *initializer, bool is_mutable, bool is_public, size_t line, size_t column) |
| AstNode * | create_func_decl_stmt (ArenaAllocator *arena, const char *name, const char *doc_comment, char **param_names, AstNode **param_types, size_t param_count, AstNode *return_type, bool is_public, bool is_static, bool returns_ownership, bool takes_ownership, bool forward_declared, AstNode *body, size_t line, size_t column) |
| AstNode * | create_struct_decl_stmt (ArenaAllocator *arena, const char *name, const char *doc_comment, AstNode **public_members, size_t public_count, AstNode **private_members, size_t private_count, bool is_public, size_t line, size_t column) |
| AstNode * | create_field_decl_stmt (ArenaAllocator *arena, const char *name, const char *doc_comment, AstNode *type, AstNode *function, bool is_public, bool is_static, size_t line, size_t column) |
| AstNode * | create_spread_decl_stmt (ArenaAllocator *arena, AstNode *type, bool via_pointer, bool is_public, size_t line, size_t column) |
| AstNode * | create_enum_decl_stmt (ArenaAllocator *arena, const char *name, const char *doc_comment, char **members, size_t member_count, bool is_public, size_t line, size_t column) |
| AstNode * | create_if_stmt (ArenaAllocator *arena, Expr *condition, AstNode *then_stmt, AstNode **elif_stmts, int elif_count, AstNode *else_stmt, size_t line, size_t column) |
| AstNode * | create_infinite_loop_stmt (ArenaAllocator *arena, AstNode *body, size_t line, size_t column) |
| AstNode * | create_for_loop_stmt (ArenaAllocator *arena, AstNode **initializers, size_t init_count, Expr *condition, Expr *optional, AstNode *body, size_t line, size_t column) |
| AstNode * | create_loop_stmt (ArenaAllocator *arena, Expr *condition, Expr *optional, AstNode *body, size_t line, size_t column) |
| AstNode * | create_return_stmt (ArenaAllocator *arena, Expr *value, size_t line, size_t column) |
| AstNode * | create_block_stmt (ArenaAllocator *arena, AstNode **statements, size_t stmt_count, size_t line, size_t column) |
| AstNode * | create_print_stmt (ArenaAllocator *arena, Expr **expressions, size_t expr_count, bool ln, size_t line, size_t column) |
| AstNode * | create_break_continue_stmt (ArenaAllocator *arena, bool is_continue, size_t line, size_t column) |
| AstNode * | create_defer_stmt (ArenaAllocator *arena, AstNode *statement, size_t line, size_t column) |
| AstNode * | create_switch_stmt (ArenaAllocator *arena, AstNode *condition, AstNode **cases, size_t case_count, AstNode *default_case, size_t line, size_t column) |
| AstNode * | create_impl_stmt (ArenaAllocator *arena, char **function_name_list, AstNode **function_type_list, AstNode *body, char **struct_name_list, size_t function_name_count, size_t struct_name_count, size_t line, size_t column) |
| AstNode * | create_case_stmt (ArenaAllocator *arena, AstNode **values, size_t value_count, AstNode *body, size_t line, size_t column) |
| AstNode * | create_default_stmt (ArenaAllocator *arena, AstNode *body, size_t line, size_t column) |
| AstNode * create_block_stmt | ( | ArenaAllocator * | arena, |
| AstNode ** | statements, | ||
| size_t | stmt_count, | ||
| size_t | line, | ||
| size_t | column | ||
| ) |
| AstNode * create_break_continue_stmt | ( | ArenaAllocator * | arena, |
| bool | is_continue, | ||
| size_t | line, | ||
| size_t | column | ||
| ) |
| AstNode * create_case_stmt | ( | ArenaAllocator * | arena, |
| AstNode ** | values, | ||
| size_t | value_count, | ||
| AstNode * | body, | ||
| size_t | line, | ||
| size_t | column | ||
| ) |
| AstNode * create_default_stmt | ( | ArenaAllocator * | arena, |
| AstNode * | body, | ||
| size_t | line, | ||
| size_t | column | ||
| ) |
| AstNode * create_defer_stmt | ( | ArenaAllocator * | arena, |
| AstNode * | statement, | ||
| size_t | line, | ||
| size_t | column | ||
| ) |
| AstNode * create_enum_decl_stmt | ( | ArenaAllocator * | arena, |
| const char * | name, | ||
| const char * | doc_comment, | ||
| char ** | members, | ||
| size_t | member_count, | ||
| bool | is_public, | ||
| size_t | line, | ||
| size_t | column | ||
| ) |
| AstNode * create_expr_stmt | ( | ArenaAllocator * | arena, |
| Expr * | expression, | ||
| size_t | line, | ||
| size_t | column | ||
| ) |
| AstNode * create_field_decl_stmt | ( | ArenaAllocator * | arena, |
| const char * | name, | ||
| const char * | doc_comment, | ||
| AstNode * | type, | ||
| AstNode * | function, | ||
| bool | is_public, | ||
| bool | is_static, | ||
| size_t | line, | ||
| size_t | column | ||
| ) |
| AstNode * create_for_loop_stmt | ( | ArenaAllocator * | arena, |
| AstNode ** | initializers, | ||
| size_t | init_count, | ||
| Expr * | condition, | ||
| Expr * | optional, | ||
| AstNode * | body, | ||
| size_t | line, | ||
| size_t | column | ||
| ) |
| AstNode * create_func_decl_stmt | ( | ArenaAllocator * | arena, |
| const char * | name, | ||
| const char * | doc_comment, | ||
| char ** | param_names, | ||
| AstNode ** | param_types, | ||
| size_t | param_count, | ||
| AstNode * | return_type, | ||
| bool | is_public, | ||
| bool | is_static, | ||
| bool | returns_ownership, | ||
| bool | takes_ownership, | ||
| bool | forward_declared, | ||
| AstNode * | body, | ||
| size_t | line, | ||
| size_t | column | ||
| ) |
| AstNode * create_if_stmt | ( | ArenaAllocator * | arena, |
| Expr * | condition, | ||
| AstNode * | then_stmt, | ||
| AstNode ** | elif_stmts, | ||
| int | elif_count, | ||
| AstNode * | else_stmt, | ||
| size_t | line, | ||
| size_t | column | ||
| ) |
| AstNode * create_impl_stmt | ( | ArenaAllocator * | arena, |
| char ** | function_name_list, | ||
| AstNode ** | function_type_list, | ||
| AstNode * | body, | ||
| char ** | struct_name_list, | ||
| size_t | function_name_count, | ||
| size_t | struct_name_count, | ||
| size_t | line, | ||
| size_t | column | ||
| ) |
| AstNode * create_infinite_loop_stmt | ( | ArenaAllocator * | arena, |
| AstNode * | body, | ||
| size_t | line, | ||
| size_t | column | ||
| ) |
| AstNode * create_loop_stmt | ( | ArenaAllocator * | arena, |
| Expr * | condition, | ||
| Expr * | optional, | ||
| AstNode * | body, | ||
| size_t | line, | ||
| size_t | column | ||
| ) |
| AstNode * create_print_stmt | ( | ArenaAllocator * | arena, |
| Expr ** | expressions, | ||
| size_t | expr_count, | ||
| bool | ln, | ||
| size_t | line, | ||
| size_t | column | ||
| ) |
| AstNode * create_program_node | ( | ArenaAllocator * | arena, |
| AstNode ** | statements, | ||
| size_t | stmt_count, | ||
| size_t | line, | ||
| size_t | column | ||
| ) |
| AstNode * create_return_stmt | ( | ArenaAllocator * | arena, |
| Expr * | value, | ||
| size_t | line, | ||
| size_t | column | ||
| ) |
| AstNode * create_spread_decl_stmt | ( | ArenaAllocator * | arena, |
| AstNode * | type, | ||
| bool | via_pointer, | ||
| bool | is_public, | ||
| size_t | line, | ||
| size_t | column | ||
| ) |
| AstNode * create_struct_decl_stmt | ( | ArenaAllocator * | arena, |
| const char * | name, | ||
| const char * | doc_comment, | ||
| AstNode ** | public_members, | ||
| size_t | public_count, | ||
| AstNode ** | private_members, | ||
| size_t | private_count, | ||
| bool | is_public, | ||
| size_t | line, | ||
| size_t | column | ||
| ) |
| AstNode * create_switch_stmt | ( | ArenaAllocator * | arena, |
| AstNode * | condition, | ||
| AstNode ** | cases, | ||
| size_t | case_count, | ||
| AstNode * | default_case, | ||
| size_t | line, | ||
| size_t | column | ||
| ) |
| AstNode * create_var_decl_stmt | ( | ArenaAllocator * | arena, |
| const char * | name, | ||
| const char * | doc_comment, | ||
| AstNode * | var_type, | ||
| Expr * | initializer, | ||
| bool | is_mutable, | ||
| bool | is_public, | ||
| size_t | line, | ||
| size_t | column | ||
| ) |