Antlr4语法文件中;
Antlr4语法中,支持的关键字有:import, fragment, lexer, parser, grammar, returns, locals, throws, catch..., finally, mode, options, tokens
基于IDEA调试Antlr4语法规则(文法可视化)
?...基于IDEA调试Antlr4语法一般步骤:
1) 创建一个调试工程,并创建一个g4文件
这里,我自己测试用Java开发,所以创建的是一个Maven工程,g4文件放在了src/main/resources...一般来说,面向程序静态分析时,都是使用访问者模式的,很少使用监听器模式(无法主动控制遍历AST的顺序,不方便在不同节点遍历之间传递数据)
Antlr4词法解析和语法解析
如前面的语法定义,分为Lexer...的东西,包括最后的toResult(parser)也是调用访问者模式的类去遍历语法树来生成Logical Plan
spark提供了一个.g4文件,编译的时候会使用Antlr根据这个.g4生成对应的词法分析类和语法分析类