《ANTLR 4权威指南》——3.3 将生成的语法分析器与Java程序集成

本节书摘来自华章计算机《ANTLR 4权威指南》一书中的第3章,第3.3节,作者[美] 特恩斯·帕尔(Terence Parr),张博 译,更多章节内容可以访问云栖社区“华章计算机”公众号查看。

3.3 将生成的语法分析器与Java程序集成

在语法准备就绪之后,我们就可以将ANTLR自动生成的代码和一个更大的程序进行集成。在本节中,我们将会使用一个简单的Java示例程序的main()方法调用我们的“初始化语句解析器”,并打印出和TestRig的“-tree”选项类似的语法分析树。下面是完整的Test.java程序,它体现出了2.1节中的完整的识别流程。
《ANTLR 4权威指南》——3.3 将生成的语法分析器与Java程序集成

上面的程序使用了很多ANTLR运行库的类,像是CommonTokenStream和ParseTree,我们将在4.1节中深入学习它们。

下面是编译运行Test的方式:
《ANTLR 4权威指南》——3.3 将生成的语法分析器与Java程序集成

ANTLR还能自动报告语法错误,并从语法错误中恢复。例如,如果我们输入一个缺失最后的右花括号的初始化语句,结果会是下面这样:
《ANTLR 4权威指南》——3.3 将生成的语法分析器与Java程序集成

现在,我们已经知道了如何对一个语法运行ANTLR工具,以及如何将自动生成的语法分析器和一个微型的Java程序集成。不过,一个仅仅能够检查语法正确性的程序并没有什么亮点,我们要构建的是一个能够将short数组初始化语句转换为String对象的翻译器。

上一篇:awk 统计域出现的次数并且排序


下一篇:CSS-边框底部宽度 | border-bottom-width