Wrote Toy_Parser with minimal features, tests missing

It's too late at night, so I'm packing this up with only a dummy warning
message for the tests. I'll keep going tomorrow, hopefully.
This commit is contained in:
2024-09-12 20:53:34 +10:00
parent eca3350c64
commit b00a6838be
9 changed files with 628 additions and 35 deletions

View File

@@ -0,0 +1,21 @@
#pragma once
#include "toy_common.h"
#include "toy_memory.h"
#include "toy_lexer.h"
#include "toy_ast.h"
typedef struct Toy_Parser {
Toy_Lexer* lexer;
//last two outputs
Toy_Token current;
Toy_Token previous;
bool error;
bool panic; //currently processing an error
} Toy_Parser;
TOY_API void Toy_bindParser(Toy_Parser* parser, Toy_Lexer* lexer);
TOY_API Toy_Ast* Toy_scanParser(Toy_Bucket** bucket, Toy_Parser* parser);
TOY_API void Toy_resetParser(Toy_Parser* parser);