mirror of
https://github.com/iritmaximus/ttk91-compiler.git
synced 2026-10-12 19:13:40 +03:00
implemented ast printing
This commit is contained in:
@@ -7,5 +7,6 @@ struct comment {
|
||||
};
|
||||
|
||||
struct comment * comment_create(char *text);
|
||||
int comment_print(struct comment *c);
|
||||
|
||||
#endif
|
||||
|
||||
@@ -25,6 +25,8 @@ struct expr {
|
||||
};
|
||||
|
||||
struct expr * expr_create(expr_t kind, struct label *l, struct oper *o, struct ttk_register *f_arg, struct value *s_arg, struct comment *c, struct expr *n);
|
||||
int expr_print(struct expr *e);
|
||||
|
||||
void expr_copy(struct expr *orig, struct expr *copy);
|
||||
|
||||
struct expr *expr_create_instruction(struct oper *o, struct ttk_register *ttk_reg, struct value *v);
|
||||
|
||||
@@ -15,6 +15,8 @@ struct label {
|
||||
};
|
||||
|
||||
struct label * label_create(label_t kind, char* name, int value);
|
||||
int label_print(struct label *l);
|
||||
|
||||
struct label * label_create_const(char* name);
|
||||
struct label * label_create_const_sys(char* name);
|
||||
struct label * label_create_tag(char* name);
|
||||
|
||||
@@ -19,6 +19,8 @@ struct oper {
|
||||
};
|
||||
|
||||
struct oper * oper_create(oper_t kind, char* oper_name);
|
||||
int oper_print(struct oper *o);
|
||||
|
||||
struct oper * oper_create_data(char* oper_name);
|
||||
struct oper * oper_create_arithmetic(char* oper_name);
|
||||
struct oper * oper_create_logic(char* oper_name);
|
||||
|
||||
@@ -17,4 +17,6 @@ int parse_register_num(char *name, ttk_register_t kind);
|
||||
struct ttk_register * ttk_register_create_register(char* name);
|
||||
struct ttk_register * ttk_register_create_stack_register(char* name);
|
||||
|
||||
int ttk_register_print(struct ttk_register *ttk_reg);
|
||||
|
||||
#endif
|
||||
|
||||
@@ -50,5 +50,6 @@ struct pure_value * pure_value_create_label(struct label *l);
|
||||
|
||||
struct pure_value * pure_value_create(value_t kind, struct ttk_register *ttk_reg, int num, struct label *l);
|
||||
addr_mode_t parse_addr_mode(char addr_mode);
|
||||
int value_print(struct value *v);
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user