aboutsummaryrefslogtreecommitdiff
path: root/src/main.c
diff options
context:
space:
mode:
authorc+12023-10-05 11:02:22 -0400
committerc+12023-10-05 11:02:22 -0400
commit668e0fb0f4fc4bdd990d9ab349da445960d5764e (patch)
treea6411de1b7806d6cb91d84158cd7bc513dee235b /src/main.c
parent4d9dd289951589ddf408fdec62245b20cfe199c7 (diff)
redesign the lexer, some mem leaks :(
Diffstat (limited to 'src/main.c')
-rw-r--r--src/main.c37
1 files changed, 19 insertions, 18 deletions
diff --git a/src/main.c b/src/main.c
index c084002..c0a8d43 100644
--- a/src/main.c
+++ b/src/main.c
@@ -9,40 +9,41 @@
#include "include/hlkt.h"
int main(int argc, char* argv[]) {
- char* source;
-
- lexer_t* lexer;
+ char* src; /* the source "code" */
pp_t* pp;
+ lexer_t* lexer;
- source = source_get(argv[1]);
- HLKT_ASS(source);
+ /* get source */
+ src = source_get(argv[1]);
+ HLKT_ASS(src);
log_inf("source gotten");
- log_inf("source: %s", source);
- pp = pp_init(source);
+ /* create pre-processor */
+ pp = pp_init(src);
HLKT_ASS(pp);
log_inf("preprocessor created");
+ /* pre-process source */
pp_run(pp);
- free(source);
- source = pp->psrc;
- pp_destroy(pp);
- HLKT_ASS(source);
+ free(src);
+ src = pp->psrc;
+ HLKT_ASS(src);
log_inf("preprocessor ran");
- log_inf("preprocessed source: %s", source);
- /*
- lexer = lexer_init(source);
+ /* create lexer */
+ lexer = lexer_init(src);
HLKT_ASS(lexer);
log_inf("lexer created");
+ /* run lexer */
lexer_run(lexer);
+ log_inf("lexer ran");
+ /* clean up */
+ pp_destroy(pp);
lexer_destroy(lexer);
- */
- free(source);
- /*free(pp->psrc);*/
-
+ token_destroy(lexer->tokenl);
+ free(src);
HLKT_LOG();