如何在将ANTLR 3语法转换为ANTLR 4时删除'k'选项

时间:2017-05-30 13:01:27

标签: parsing antlr4 antlr3

令牌前瞻选项在ANTLR 4中消失了,所以...... 这是ANTLR 3代码:

declarations: // Order is important here.
    ( options { k = 3; }: DECLARE_SYMBOL identifier (variable_declaration | condition_declaration))*
        cursor_declaration* handler_declaration*
;

1 个答案:

答案 0 :(得分:3)

删除k选项。它用于告诉解析器生成器必要的前瞻。 ANTLR4中的新ALL(*)算法不再需要此设置,因为它可以动态使用任何所需的前瞻(理论上甚至是无限制的)。