24 lines
622 B
C
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
|