2024-03-26 18:31:33 +00:00
|
|
|
#ifndef MK_COMPILER_H
|
|
|
|
#define MK_COMPILER_H
|
|
|
|
|
|
|
|
#include "commons.h"
|
|
|
|
#include "status.h"
|
|
|
|
#include "prog.h"
|
|
|
|
#include "node.h"
|
2024-03-27 10:49:10 +00:00
|
|
|
#include "symtable.h"
|
2024-03-26 18:31:33 +00:00
|
|
|
|
|
|
|
struct compiler
|
|
|
|
{
|
|
|
|
struct status* status;
|
|
|
|
};
|
|
|
|
|
|
|
|
void compiler_init(struct compiler* self,
|
|
|
|
struct status* status);
|
|
|
|
void compiler_free(struct compiler* self);
|
|
|
|
|
|
|
|
void compiler_compile(struct compiler* self,
|
|
|
|
struct node* node,
|
2024-03-27 10:49:10 +00:00
|
|
|
struct prog* prog,
|
|
|
|
struct symtable* symtable);
|
2024-03-26 18:31:33 +00:00
|
|
|
#endif
|