aboutsummaryrefslogtreecommitdiff
path: root/src/parser.c
diff options
context:
space:
mode:
authordec05eba <dec05eba@protonmail.com>2020-01-18 10:01:27 +0100
committerdec05eba <dec05eba@protonmail.com>2020-01-18 10:05:55 +0100
commit50c928d224bff0af322f23a7d2b842cd54aa2e68 (patch)
tree4e02b167c89c2ff109f6dfd1d2734309ea0192db /src/parser.c
parent1dbef1bfdefe8d7967a360f00d350db307d344e2 (diff)
Start on bytecode, move object files to build directory
Diffstat (limited to 'src/parser.c')
-rw-r--r--src/parser.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/parser.c b/src/parser.c
index 1324305..176be63 100644
--- a/src/parser.c
+++ b/src/parser.c
@@ -1,8 +1,10 @@
#include "../include/parser.h"
+#include "../include/bytecode.h"
#include <stdio.h>
typedef struct {
TslTokenizer tokenizer;
+ TslBytecodeWriter bytecode_writer;
} TslParser;
static int tsl_parser_parse_rhs(TslParser *self);
@@ -10,6 +12,7 @@ static int tsl_parser_parse_expressions(TslParser *self, TslToken end_token);
static void tsl_parser_init(TslParser *self, const char *code, size_t code_size) {
tsl_tokenizer_init(&self->tokenizer, code, code_size);
+ tsl_bytecode_writer_init(&self->bytecode_writer);
}
static int tsl_parser_parse_map(TslParser *self) {
@@ -263,7 +266,6 @@ int tsl_parser_parse_expressions(TslParser *self, TslToken end_token) {
return 0;
}
-/* EXPRS */
int tsl_parse(const char *code, size_t code_size) {
TslParser parser;
tsl_parser_init(&parser, code, code_size);