![]() |
1
2
我不知道PLY的细节,但是在我构建的其他系统中,使用一个lexer来管理include文件堆栈是最有意义的。因此lexer将返回一个统一的令牌流,打开和关闭遇到的include文件。 |
![]() |
2
2
一个有趣的巧合是,一个来自同一个谷歌搜索的链接让我想到了这个问题,它解释了如何
write your own lexer for a PLY parser
. 这篇文章解释得很简单,但是它是由四个实例变量和一个
|
![]() |
3
0
好 啊,
解析器不再调用lexer,因为在调用parse函数时,可以使用tokenfunc参数重写解析器使用的getToken函数。
而我的函数现在是调用以获取下一个令牌的函数,它在先前构建的令牌列表上迭代。 考虑到词法,当我遇到源关键字时,我克隆我的词表,并改变输入以包含文件。
|
![]() |
Toru · Oracle文本包含和技术内容 7 年前 |
![]() |
Patrick Collins · 如何对Alex代码进行单元测试? 9 年前 |
|
user2408664 · 词汇和语法错误 11 年前 |