feat: 添加对结构体节点的打印支持
- 增加了对 StructNode 类型的处理逻辑 - 打印结构体名称、字段、初始化函数和方法 - 优化了打印结构体信息的输出格式
This commit is contained in:
parent
3dd71ff742
commit
50f4fbb82d
@ -66,6 +66,14 @@ public class ASTPrinter {
|
|||||||
print(fn, indent + 1);
|
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(
|
case FunctionNode(
|
||||||
String name, List<ParameterNode> parameters, String returnType, List<StatementNode> body,
|
String name, List<ParameterNode> parameters, String returnType, List<StatementNode> body,
|
||||||
NodeContext _
|
NodeContext _
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user