aboutsummaryrefslogtreecommitdiff
path: root/src/as_analyzer.h
diff options
context:
space:
mode:
authorMistivia <i@mistivia.com>2025-03-24 20:37:41 +0800
committerMistivia <i@mistivia.com>2025-03-24 20:37:41 +0800
commit4188f791787be19f32226b8ac0f213f61cdd4666 (patch)
tree54a38cbcaf67647c2e0e865f7f1dd537456817c1 /src/as_analyzer.h
parent4f7f0aa49844756dbf430f35600d7c88e1a6a730 (diff)
finish analyzer
Diffstat (limited to 'src/as_analyzer.h')
-rw-r--r--src/as_analyzer.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/as_analyzer.h b/src/as_analyzer.h
index 793d14a..988cca0 100644
--- a/src/as_analyzer.h
+++ b/src/as_analyzer.h
@@ -4,13 +4,20 @@
#include "as_parser.h"
#include "utils.h"
-struct sym_table_entry;
+struct sym_table_entry {
+ const char * name;
+ size_t offset;
+};
+
struct sym_table {
int size;
int cap;
struct sym_table_entry *buf;
};
+struct sym_table new_sym_table(allocator_t alct);
+void sym_table_add(allocator_t alct, struct sym_table* tbl, const char* name, int pos);
+
struct sym_table analyze_prog(allocator_t alct, prog_t prog);
#endif // FVM_AS_ANALYZER_H_