什么是 CLR (1) 解析器?

CLR 定义了规范的前瞻。CLR 解析使用 LR (1) 项的规范集合来构造 CLR (1) 解析表。与 SLR (1) 解析相比,CLR (1) 解析表的状态数更多。在CLR(1)中,它只能在前瞻符号中定位reduce节点。

CLR 解析器的工作


LR(1)语法项目集合的构建

它需要三样东西

  • 增强语法

  • 闭包函数

  • 转到函数

增强语法 它是一个新的语法 G',其中包含一个新的产生式

S′ → S 与给定语法 G 的所有其他产生式。

关闭

程序关闭(一)

begin

Repeat

for each item A → α ∙ B β, a in I,

   each production B → γ and

      each terminal b ∈ FIRST (β a)

If B → ∙ γ is not in I

Add B → ∙ γ, b to I

Until no more elements can be joined to I;

end

以上是 什么是 CLR (1) 解析器? 的全部内容, 来源链接: utcz.com/z/363386.html

回到顶部