#ifndef AST_IF_H #define AST_IF_H #include #include "utils/ast/ast.h" struct ast_if { struct ast *condition; struct ast *then_clause; struct ast *else_clause; }; /** * Checks if the given AST node is an if statement. */ bool ast_is_if(struct ast *node); /** * Retrieves the if statement data from the given AST node. * Assumes that the node is of type AST_IF. */ struct ast_if *ast_get_if(struct ast *node); /** * Creates a new AST node representing an if statement. */ struct ast *ast_create_if(struct ast *condition, struct ast *then_clause, struct ast *else_clause); #endif /* ! AST_IF_H */