feat: 添加对结构体节点的打印支持

- 增加了对 StructNode 类型的处理逻辑
- 打印结构体名称、字段、初始化函数和方法
- 优化了打印结构体信息的输出格式
This commit is contained in:
Luke 2025-08-29 15:23:21 +08:00
parent 3dd71ff742
commit 50f4fbb82d

View File

@ -66,6 +66,14 @@ public class ASTPrinter {
print(fn, indent + 1);
}
}
case StructNode s -> {
System.out.println(pad + "struct " + s.name());
s.fields().forEach(f -> print(f, indent + 1));
if (s.init() != null) print(s.init(), indent + 1);
s.methods().forEach(m -> print(m, indent + 1));
}
case FunctionNode(
String name, List<ParameterNode> parameters, String returnType, List<StatementNode> body,
NodeContext _