From b2aa09bf1958952836e4c2664af122458d246a8b Mon Sep 17 00:00:00 2001 From: c+1 Date: Mon, 15 May 2023 17:37:11 -0400 Subject: parse the parse --- src/main.c | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) (limited to 'src/main.c') diff --git a/src/main.c b/src/main.c index fa468a5..33be891 100644 --- a/src/main.c +++ b/src/main.c @@ -4,6 +4,7 @@ #include "include/log.h" #include "include/lexer.h" #include "include/tree.h" +#include "include/parser.h" int main(int argc, char* argv[]) { @@ -13,7 +14,7 @@ int main(int argc, char* argv[]) { fsource = fopen ("examples/hello.halk", "rb"); if (!fsource) { - fputs("Source file not found.", stderr); + log_err("Source file not found"); exit(1); }; @@ -25,32 +26,33 @@ int main(int argc, char* argv[]) { if (!source) { fclose(fsource); - fputs("Memory allocation failed.", stderr); + log_err("Memory allocation failed"); exit(1); } if (1 != fread(source, fsource_size, 1, fsource)) { fclose(fsource); free(source); - fputs("Could not read source file.", stderr); + log_err("Could not read source file"); exit(1); } - fclose(fsource); + log_inf("Source file loaded"); - lexer_t* lexer = lexer_init( source ); + lexer_t* lexer = lexer_init(source); + log_inf("Lexer created"); - printf("\n=== INPUT =======\n%s\n=== END INPUT ===\n", lexer->content); + parser_t* parser = parser_init(lexer); + log_inf("Parser created"); - token_t* token = NULL; + tree_t* tree = parser_parse(parser); + log_inf("Tree root created"); - while ((token = lexer_get_next_token(lexer)) != NULL) { - printf("===\ntoken type: %d\ntoken value: %s\n===\n", token->type, token->value); - } + printf("TYPE: [%d]\n", tree->type); - lexer_destroy(lexer); + fclose(fsource); - log_inf("Lexer destroyed."); + log_inf("Source file closed"); return 0; } -- cgit v1.2.3