antlr4相关内容

ANTLR4使用DOTGenerator解析树到DOT

如何使用DOTGenerator将解析树转换为ANTLR4中的DOT / graphviz格式? 我发现这个相关问题但唯一的答案是使用TreeViewer在JPanel中显示树,而这不是我所追求的。 这个问题是我需要的,但没有得到答案。我偶然发现的其他一切都与ANTLR3的DOTTreeGenerator有关,并没有帮助。 我正在使用带有IntelliJ的ANTLR4插件的Java。 ..
发布时间:2018-12-21 21:03:51 Java开发

ANTLR - 输入错误不匹配

我的语法看起来像是由特定语言的评论和控制语句组成: 语法: 语法DD; ddlist:(ddstmt | jclcomment)+; ddstmt:dd1 | dd2 | dd3 | dd4; dd1:JCLBEGIN ddname DDWORD'DUMMY'; dd2:JCLBEGIN ddname DDWORD'DYNAM'; dd3:JCLBEGI ..
发布时间:2018-12-20 01:44:41 Java开发

使用ANTLR嵌套的布尔表达式解析器

我正在尝试解析嵌套的布尔表达式并分别获取表达式中的各个条件。例如,如果输入字符串是: (A = a OR B = b OR C = c AND((D = d AND E = e)OR(F = f和G = g))) 我想得到正确顺序的条件。即, D = d AND E = e OR F = f AND G = g AND A = a OR B = b OR C = c ..
发布时间:2018-12-10 23:12:18 Java开发

我们可以使用ANTLR定义非上下文语法吗?

我对ANTLR4很新,现在我正在尝试用它来定义哪种语法。 据我所知,ANTLR中有两种规则: 解析器规则 (小写)单词)和 词法规则 (大写单词)。示例: 语法测试; init:prog(','prog)*; prog:A | prog ; A:[a-z] +; 形成语法生成规则的立场我会说解析器规则是NON-TERMINAL符号,可以替 ..
发布时间:2018-12-10 10:25:50 Java开发

Antlr:初学者期望ID的不匹配输入

作为初学者,当我从 The Definitive学习ANTLR4时ANTLR 4参考书,我试图从第7章运行我修改过的练习版本: / ** *来解析属性文件 *此示例演示了在代码中使用嵌入式操作 * / 语法PropFile; @header { import java.util.Properties; } @members { 属性props = new Prop ..
发布时间:2018-12-07 17:55:02 Java开发

ANTLR4访问者模式简单的算术例子

我是一个完整的ANTLR4新手,所以请原谅我的无知。我遇到了此演示文稿,其中定义了一个非常简单的算术表达式语法。它看起来像: 语法表达式; start:expr; expr:left = expr op =('*'|'/')right = expr #opExpr | left = expr op =('+'|' - ')right = expr #opExpr | ..
发布时间:2018-12-05 10:44:22 Java开发

运行时期间Antlr 4.5解析器错误

我正在构建简单的语法来编写laguange用于学习目的。 我遇到了一些对我没用的奇怪错误。 第1行:0缺少{'void','int','bool','string','union'}'void' 我正在使用此语法中的prebuild lexer和parser: 语法ProgrammingLanguage; function_definition :ty ..
发布时间:2018-11-27 21:56:25 Java开发

如果ANTLR中的/ else语句使用侦听器

我正在为学校项目创建一种简单的编程语言。我正在使用ANTLR 4从我的语法生成词法分析器和解析器。到目前为止,我一直在使用ANTLRs监听器模式来应用编程语言的实际功能。 现在我想实现if / else语句,但我不是确保在使用侦听器模式时实际可以实现这些,因为ANTLR决定在使用侦听器时遍历解析树的顺序,我想if / else语句的实现将需要在解析树中跳转,具体取决于语句是满意的。 有 ..
发布时间:2018-11-26 13:58:06 Java开发

ANTLR:有一个简单的例子吗?

我想开始使用ANTLR,但是花了几个小时在 antlr.org site,我仍然无法清楚地理解Java进程的语法。 是否有一些简单的例子,类似于四操作计算器实现的使用ANTLR进行解析器定义并一直到Java源代码? 解决方案 首先创建一个语法。下面是一个小语法,您可以使用它来评估使用4个基本数学运算符构建的表达式:+, - ,*和/。你也可以用括号对表达式进行分组。 注意这个语 ..
发布时间:2018-11-26 12:47:50 Java开发

控制Scala插件中的错误IntelliJ代码编辑器错误

我有从ANTLR4生成的Java代码。 Scala通过扩展一些方法来使用Java代码。问题是IntelliJ的scala插件似乎不知道Java基类和Scala子类之间的关系,以显示误报错误消息;当Scala覆盖Java方法时,它会报告“方法...无法覆盖任何内容”。 如何控制IntelliJ中的错误级别来抑制此错误消息? 解决方案 Scala插件生成的大多数假阴性都是由类型感知突出显 ..
发布时间:2018-08-08 16:55:18 Java开发

Intellij不会识别antlr生成的源代码

我无法让Intellij识别antlr4生成的源代码。对生成的代码的任何引用都显示为错误,代码完成不起作用等。 我正在使用maven和antlr4-maven-plugin来生成代码。 我的代码,引用生成的代码编译并在maven下构建良好。 生成的代码在/ target / generated-sources / antlr4下,这是Intellij所期望的。 我尝试过通常的修复程 ..
发布时间:2018-08-08 16:39:18 其他开发

如何为Intellij IDEA配置antlr4插件

我到处寻找如何配置IntelliJ IDEA的antlr4插件。但我找不到任何东西。我只能安装插件。如果我为一个空项目手动添加.g4文件,我会在右键菜单中看到“生成ANTLR识别器”选项。就这些。我认为这是非常有前途的插件。任何人都可以告诉/指导我如何继续使用该插件? 谢谢 解决方案 我在IntelliJ 14上安装了ANTLR插件,并且能够让它运行起来。一些小事情比预期更难。 ..
发布时间:2018-08-08 14:58:44 其他开发

Antlr4导入的组合语法失败

我现在正在...... 错误(56):AqlCommentTest.g4:12:4:未定义的引用规则:htmlCommentDeclaration 错误(56):AqlCommentTest.g4:13:4:对未定义规则的引用:mdCommentDeclaration 词法分析器语法的导入似乎正在加载。 以下文件显示问题。 AqlCommentTest.g4 ..
发布时间:2018-08-01 11:59:13 其他开发

如何使用Gradle 2.10将ANTLR词法分析器语法导入另一个语法?

我一直使用Terence Parr的最终ANTLR 4参考学习ANTLR 4,我一直在使用Gradle 2.10及其内置的ANTLR插件追踪。然而,我从第4章第38-41页得到的一些代码在使用我的Gradle构建脚本时可能会遇到一些麻烦。 (之所以我使用Gradle而不是直接使用ANTLR,是因为我想最终将ANTLR集成到我为论文写作的Java Web应用程序中,并且我更愿意使用构建工具来实现这一 ..
发布时间:2018-05-17 19:57:04 Java开发

如何在ANTLR4中实现错误处理

我有以下语法来解析在图上应用的一阶逻辑公式: 语法图; / * ------------------------------------ ------------------------------ * PARSER规则 * -------- -------------------------------------------------- -------- * / ..
发布时间:2017-08-28 02:24:20 Java开发

如何在Eclipse中使用Antlr4 Ide查看实时解析树?

我是新的使用Antlr4,但我知道,存在一个Eclipse插件。 我有一个简单的问题...创建g4文件后,如何可视化实时解析树,以查看输入表达式的树? 谢谢 解决方案 目前没有规定在 ANTLR 4 IDE for Eclipse 。 同时,您可以使用-gui看到解析树切换到命令行。它还提供将分析树保存为PNG的功能。 ..
发布时间:2017-07-29 21:03:50 Java开发

ANTLR和Eclipse(或任何体面的IDE)

我一直在使用ANTLR与Eclipse一段时间使用ANTLRv3IDE插件。虽然它不是完美的,有点过时,它的工作相当不错。 现在我正在寻找转换为ANTLRv4为我正在创建的另一个DSL。然而,Eclipse支持似乎非常薄。我决定试用ANTLRWorks,这是一个NetBeans插件,但是我无法安装它(似乎被锁定到特定的日期版本(201302132200,而我有更新的东西,依然是7.3)依赖关 ..
发布时间:2017-07-29 00:10:33 Java开发

在Eclipse Luna上设置ANTLR 4 IDE的麻烦(4.4)

我正在Eclipse Luna(4.4)上安装 ANTLR 4 IDE 。我已经从Marketplace安装了它,但我不知道如何创建一个具有ANTLR 4 Lexer / Parser的项目。 当我去创建一个新项目我没有看到ANTLR 4的任何选项。我尝试创建一个.g4文件,它在编辑器中打开,但当我保存它不会做任何事情。 解决方案 我环顾了互联网,发现了一大堆资源,我拼凑在一起,通过 ..
发布时间:2017-07-27 00:23:24 Java开发