编程语言
首页 > 编程语言> > java-如何序列化antlr3 AST

java-如何序列化antlr3 AST

作者:互联网

我刚刚开始使用antlr3,正在尝试序列化.g语法的AST输出.
谢谢,
勒赞

解决方法:

正如弗拉基米尔(Vladimir)所指出的,您可以使用具有内置序列化功能的自定义AST节点类.您也可以使用树适配器来创建所需的节点类型.

如果只需要序列化而不是反序列化,则可以执行以下操作:

ast.toStringTree()

以上将为您提供类似LISP的树结构.一种简单的序列化方法是将其与带有覆盖的toString()的自定义AST节点类结合使用.由于toStringTree()使用节点的toStringTree方法,因此它将实质上序列化您放入toString中的任何内容.使它的输出足够和有用,应该设置好它.

标签:antlr,antlr3,java
来源: https://codeday.me/bug/20191107/2002325.html