vety-language/parser/ast_printer.h

24 lines
622 B
C

#ifndef AST_PRINTER_H
#define AST_PRINTER_H
#include "ast.h"
// Unicode符号定义
#define VERTICAL_LINE "│" // │
#define HORIZONTAL_LINE "─" // ─
#define BRANCH_CORNER "└" // └
#define NODE_CORNER "├" // ├
// ANSI颜色代码
#define COLOR_RESET "\033[0m"
#define COLOR_KEY "\033[94m" // 蓝色
#define COLOR_TYPE "\033[93m" // 黄色
#define COLOR_LITERAL "\033[92m" // 绿色
#define COLOR_COMMENT "\033[90m" // 灰色
#define COLOR_CYAN "\033[36m"
#define COLOR_ERROR "\033[91m" // 红色
// 打印入口函数
void ast_pretty_print(ASTNode *node);
#endif // AST_PRINTER_H