在执行词法分析时,如何正确处理 `>` 字符的“类型上下文”规则Java SE 16 规范 §3.2?

问题描述

我最近对为 Java 语言编写解析器感兴趣。我的参考是新发布的 Java SE 16 规范。在 3.2. Lexical Translations 上,我遇到了这句话,但我不确定我是否理解:

... 有一个例外:如果词法翻译发生在类型上下文中(第 4.11 节),并且输入流有两个或多个连续的 > 字符后跟一个非> 字符...

我不明白的是,在没有进行词法分析的情况下,如何判断它是否是“类型上下文”? (第 4.11 节可能会提供一个答案,但它太长了,所以我没有费心阅读全文)这里的诀窍是将每个 > 字符分隔为单独的标记,并在稍后在解析阶段消除歧义?或者有什么明显我遗漏了 - 因为我没有太多编写语言解析器的经验。

只是为了提供更多上下文,我使用 Alex 进行词法分析和(计划使用)Happy 进行解析。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)