我正在为lexer和parser使用一个.g文件.我在语法文件中有以下几行:
@header {
package foo.bar;
}
Run Code Online (Sandbox Code Playgroud)
但是我发现包行只被放入生成的解析器源文件中,并且在FooLexer.java文件中丢失.有谁知道如何处理这个?
@header {
package foo.bar;
}
Run Code Online (Sandbox Code Playgroud)
是短的:
@parser::header {
package foo.bar;
}
Run Code Online (Sandbox Code Playgroud)
要将包声明放在词法分析器中,请执行以下操作:
@lexer::header {
package foo.bar;
}
Run Code Online (Sandbox Code Playgroud)
同样适用@members { ... },这是短暂的@parser::members { ... }.还有@lexer::members { ... }将变量/方法等放在词法分析器中.