[英]Python target for Java grammar in antlr
我想使用Antlr在Python中運行Lexer for Java
對於Antlr4,我正在使用https://github.com/antlr/grammars-v4/tree/master/java8中的Java8語法。
我正在使用生成解析器
java -jar antlr-4.5.2-complete.jar -Dlanguage=Python2 ./Java8.g4
現在,如果我查看生成的Java8Lexer.py,它包含
return Character.isJavaIdentifierStart(Character.toCodePoint((char)_input.LA(-2), (char)_input.LA(-1)))
我認為類型轉換不是有效的python,在使用它時會引發語法錯誤。
我在使用antlr3 java 1.6語法使用antlr3時遇到了類似的問題。 它產生了
boolean isSomething = something
這也是無效的Python。
我想念什么嗎? 有什么方法可以使用antlr在Python中使用Java Lexer嗎?
只需從Java8語法中刪除以Character.isJavaIdentifierStart開頭的字符串即可。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.