问题标签 [cup]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
33 浏览

java - 使用 hashmap JAVA 对两个字符串数字求和

我目前正在使用 JFLEX 和 CUP 制作编译器。

我有一个存储键和值的哈希图(v)

我希望我的编译器能够识别这个

我可以将值分配给xy,但我无法添加它们并将它们分配给新密钥。

asing部分的代码是这样的,在哪里ASIGN is =IDENTIFIER is a letter expresion is a Number

我想要实现的是这样的

我不知道我是否需要一个特殊的总和代码,或者他们是否因为 String 类型而没有添加。

我会很感激一些帮助谢谢

0 投票
1 回答
43 浏览

parsing - Java杯,如何在生成的解析器文件中的每个reduce之后注入一个函数?

我正在使用 .cup 文件根据特定的派生规则生成解析器。

每次reduce之后,我想调用一个函数,是否可以在.cup文件的任何地方定义它,以便在每次reduce之后注入到生成的代码中?

0 投票
1 回答
102 浏览

java - 使用 cup 和 jflex 运行解析时出错

我是 JFlex 和 CUP 的新手。我试图做一个简单的例子,但是当我运行解析器时,它总是给出同样的错误,它不会随着语句的识别而进步。我认为问题一定出在产品或规则上。我已将 Java 中始终使用的符号定义为终端,例如:

我将非终结符定义如下:

像这样的语法:

输入数据或文件包含第 2 行的以下内容:

当我运行解析器时,我打印词法分析器的结果,然后我运行解析器得到以下结果:

错误显示在 LBRACE 中。

我用于测试的版本是:

总体思路是:

定义页面块并在内部定义其他元素,例如标签。

如果您能帮我执行这个示例,我将不胜感激。

对于规则或产生式的定义以及应如何减少 CUP,现有的信息非常稀缺。我研究过的所有例子都是算术表达式,但我没有发现更多有助于解决问题的例子。

这是我的词法分析器文件

运行解析器时,词法分析器会检测标记。我不知道空间会发生什么。

文本无法修复并继续解析由解析器杯设置。

这是生成解析器时的结果

运行解析器的代码

提前致谢

0 投票
1 回答
15 浏览

jflex - Jflex 和 CUP 不适用于 vscode 和 mac

我下载了 jflex,brew install jflex一切都按照它应该的方式工作。

但是现在当我试图让它与java_cup.runtime.*. 我不断收到以下错误

我的教授说,

“符号类是解析器 (JavaCUP) 的运行时 jar 文件的一部分。您可以在词法分析器中使用它,只需将类路径设置为包含来自 JavaCUP 的 jar 文件并导入它”

所以我在下面制作了 bash 文件并按照他所说的做了,但它不起作用。

这是我的 jflex 文件