Изменения

Перейти к: навигация, поиск

LR(1)-разбор

36 байт добавлено, 15:39, 20 сентября 2015
м
Псевдокод
Псевдокод построения множеств $closure$ и $goto$, а также множества наборов ситуаций $items$:
<code>
Item'''item'''[] closure(Item[] $I$):
'''bool''' changed
Item'''item'''[] $J$ = $I$
'''repeat'''
changed = ''false''
</code>
<code>
Item'''item'''[] goto(Item[] $I$, $X$): Item'''item'''[] $J=\varnothing$
'''for''' $[A\rightarrow\alpha\cdot X\beta, a]\in I$
$J$.add($[A\rightarrow\alpha X\cdot\beta, a]$)
</code>
<code>
Item'''item'''[][] items($G'$):
'''bool''' changed
Item'''item'''[][] $C = \{closure({S'\rightarrow\cdot S,\char36})\}$
'''repeat'''
changed = ''false''
262
правки

Навигация