#include "../include/ast.h" Ast ast_none() { Ast ast; ast.value.func_decl = NULL; ast.type = AST_NONE; return ast; } int funcdecl_init(FunctionDecl *self, ScopedAllocator *allocator) { self->name = create_buffer_view_null(); return buffer_init(&self->body, allocator, sizeof(Ast) * 4); } int funcdecl_add_to_body(FunctionDecl *self, Ast ast) { return_if_error(buffer_append(&self->body, &ast, sizeof(ast))); return BUFFER_OK; } void funccall_init(FunctionCall *self, BufferView name) { self->name = name; } void lhsexpr_init(LhsExpr *self, int isConst, BufferView var_name) { self->isConst = isConst; self->var_name = var_name; self->rhs_expr = ast_none(); }