jack-compiler/main.c

29 lines
489 B
C

#include <stdio.h>
#include <errno.h>
#include <string.h>
#include <stdlib.h>
#include "tokenizer.h"
#include "printer.h"
#include "parser.h"
int main(int argc, char* argv[]) {
if(argc < 2) {
fprintf(stderr, "Usage: %s {input file}\n", argv[0]);
return 1;
}
FILE* input = fopen(argv[1], "r");
if(input == NULL) {
fprintf(stderr, "%s\n", strerror(errno));
return errno;
}
PARSER* p = mkparser(tokenize(input), argv[1]);
parse(p);
printparser(stdout, p);
return 0;
}