From 2b870752f767b8fecaf5ceb1dfe4d3366284a690 Mon Sep 17 00:00:00 2001 From: Carlos Maniero Date: Fri, 21 Apr 2023 12:33:13 -0300 Subject: ast: Create an init function for ast_binary_operation_t Signed-off-by: Carlos Maniero Co-authored-by: Johnny Richard --- src/ast.h | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'src/ast.h') diff --git a/src/ast.h b/src/ast.h index cb9b8d5..70852b1 100644 --- a/src/ast.h +++ b/src/ast.h @@ -62,6 +62,7 @@ typedef struct ast_visitor_t { void (*visit_function)(struct ast_visitor_t *, ast_function_declaration_t *); void (*visit_return_stmt)(struct ast_visitor_t *, ast_return_stmt_t *); void (*visit_literal)(struct ast_visitor_t *, ast_literal_t *); + void (*visit_binary_operation)(struct ast_visitor_t *, ast_binary_operation_t *); } ast_visitor_t; typedef enum { @@ -90,8 +91,10 @@ void ast_node_accept_visitor(ast_node_t *node, ast_visitor_t *visitor); ast_node_t* ast_node_new(); void ast_node_destroy(ast_node_t *node); -void ast_node_init_function_declaration(ast_node_t* node, string_view_t name, type_t return_type, ast_node_t *body); -void ast_node_init_return_stmt(ast_node_t* node, ast_node_t *argument); +void ast_node_init_function_declaration(ast_node_t *node, string_view_t name, type_t return_type, ast_node_t *body); +void ast_node_init_return_stmt(ast_node_t *node, ast_node_t *argument); +void ast_node_init_binary_operation(ast_node_t *node, string_view_t op, ast_node_t *left, ast_node_t *right); +// FIXME: use the naming convention void ast_literal_integer_create(ast_node_t* node, uint32_t number); #endif /* AST_H */ -- cgit v1.2.3