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 parsing logic for types
2 #pragma once
4 #include "../ast.h"
5 #include "context.h"
7 type_ast_t *parse_type_str(const char *str);
9 type_ast_t *parse_enum_type(parse_ctx_t *ctx, const char *pos);
10 type_ast_t *parse_func_type(parse_ctx_t *ctx, const char *pos);
11 type_ast_t *parse_list_type(parse_ctx_t *ctx, const char *pos);
12 type_ast_t *parse_non_optional_type(parse_ctx_t *ctx, const char *pos);
13 type_ast_t *parse_pointer_type(parse_ctx_t *ctx, const char *pos);
14 type_ast_t *parse_table_type(parse_ctx_t *ctx, const char *pos);
15 type_ast_t *parse_type(parse_ctx_t *ctx, const char *pos);
16 type_ast_t *parse_type_name(parse_ctx_t *ctx, const char *pos);