jjTree和javaCC学习笔记
javacc是类似lex/yacc的parser生成器,可以把一段文本转换为抽象语法树(AST)。
一般来说,用户首先要写一个jjtree文件(如eg2.jjt),然后执行jjtree eg2.jjt编译得到eg2.jj,再执行javacc eg2.jj就可以生成所有的.java文件。单独使用javacc也可以,不过基本上不能实用。
javacc的教程比较多,官方网站上的教程也很不错。相比之下,
jjtree的参考手册里讲了很多细节,比如jjtree里面的堆栈,以及一些条件规则,但其实大部分都用不到。第一次看这个reference的时候感觉比较晕,比javacc的几个教程差多了。如果已经看完了javacc的教程,那接下来看一下这篇
introduction,然后结合自带例子和eclipse的调试器来学习jjtree比较好。

本文档详细记录了jjTree和javaCC的学习过程,通过分析一个改进后的eg2.jjt示例,探讨如何使用jjTree进行语法分析,并展示了如何在生成的抽象语法树中遍历节点和处理Token。主要涉及SimpleNode的jjtOpen和jjtClose方法,以及如何在表达式解析中处理AdditiveExpression和MultiplicativeExpression。
最低0.47元/天 解锁文章
1516

被折叠的 条评论
为什么被折叠?



