aboutsummaryrefslogtreecommitdiff
path: root/src/parse/parse.h
diff options
context:
space:
mode:
authorBruce Hill <bruce@bruce-hill.com>2025-08-25 01:26:47 -0400
committerBruce Hill <bruce@bruce-hill.com>2025-08-25 01:26:47 -0400
commitfbc6b59305d8414bb1cb471ea3f85a8d926beb4f (patch)
tree0e2c7f32d7cc64f5fdc56d3086766d5bfcbe9d25 /src/parse/parse.h
parentbbcc85eec5ccccd7cd7573f15510ceccfe42cc0d (diff)
Further split out files for parsing
Diffstat (limited to 'src/parse/parse.h')
-rw-r--r--src/parse/parse.h31
1 files changed, 2 insertions, 29 deletions
diff --git a/src/parse/parse.h b/src/parse/parse.h
index 57d798ce..c7c97f24 100644
--- a/src/parse/parse.h
+++ b/src/parse/parse.h
@@ -1,49 +1,22 @@
-#pragma once
-
// Parsing logic
+#pragma once
#include "../ast.h"
#include "context.h"
-ast_t *parse(const char *str);
-ast_t *parse_expression(const char *str);
+ast_t *parse_expr_str(const char *str);
-ast_t *parse_assignment(parse_ctx_t *ctx, const char *pos);
-ast_t *parse_block(parse_ctx_t *ctx, const char *pos);
ast_t *parse_bool(parse_ctx_t *ctx, const char *pos);
-ast_t *parse_declaration(parse_ctx_t *ctx, const char *pos);
-ast_t *parse_defer(parse_ctx_t *ctx, const char *pos);
-ast_t *parse_do(parse_ctx_t *ctx, const char *pos);
-ast_t *parse_doctest(parse_ctx_t *ctx, const char *pos);
-ast_t *parse_assert(parse_ctx_t *ctx, const char *pos);
-ast_t *parse_enum_def(parse_ctx_t *ctx, const char *pos);
ast_t *parse_expr(parse_ctx_t *ctx, const char *pos);
ast_t *parse_extended_expr(parse_ctx_t *ctx, const char *pos);
-ast_t *parse_extern(parse_ctx_t *ctx, const char *pos);
-ast_t *parse_for(parse_ctx_t *ctx, const char *pos);
ast_t *parse_heap_alloc(parse_ctx_t *ctx, const char *pos);
-ast_t *parse_if(parse_ctx_t *ctx, const char *pos);
-ast_t *parse_lang_def(parse_ctx_t *ctx, const char *pos);
-ast_t *parse_extend(parse_ctx_t *ctx, const char *pos);
-ast_t *parse_namespace(parse_ctx_t *ctx, const char *pos);
ast_t *parse_negative(parse_ctx_t *ctx, const char *pos);
ast_t *parse_not(parse_ctx_t *ctx, const char *pos);
ast_t *parse_none(parse_ctx_t *ctx, const char *pos);
ast_t *parse_parens(parse_ctx_t *ctx, const char *pos);
-ast_t *parse_pass(parse_ctx_t *ctx, const char *pos);
ast_t *parse_reduction(parse_ctx_t *ctx, const char *pos);
-ast_t *parse_repeat(parse_ctx_t *ctx, const char *pos);
-ast_t *parse_return(parse_ctx_t *ctx, const char *pos);
-ast_t *parse_skip(parse_ctx_t *ctx, const char *pos);
ast_t *parse_stack_reference(parse_ctx_t *ctx, const char *pos);
-ast_t *parse_statement(parse_ctx_t *ctx, const char *pos);
-ast_t *parse_stop(parse_ctx_t *ctx, const char *pos);
-ast_t *parse_struct_def(parse_ctx_t *ctx, const char *pos);
ast_t *parse_term(parse_ctx_t *ctx, const char *pos);
ast_t *parse_term_no_suffix(parse_ctx_t *ctx, const char *pos);
-ast_t *parse_update(parse_ctx_t *ctx, const char *pos);
-ast_t *parse_use(parse_ctx_t *ctx, const char *pos);
ast_t *parse_var(parse_ctx_t *ctx, const char *pos);
-ast_t *parse_when(parse_ctx_t *ctx, const char *pos);
-ast_t *parse_while(parse_ctx_t *ctx, const char *pos);
ast_t *parse_deserialize(parse_ctx_t *ctx, const char *pos);