假设有产生式 X –> α ,它的翻译函数X为:
X() { T(α) }
下表给出了每一种α的产生式形式,右栏给出了每种产生式对应的代码,即T(α)。
在给出表之前,先给出α的预测集D(α).
2. 反之,如果 ,则D(α)=(FIRST(α)-{ε})∪FOLLOW(X)
注意: 下表中的t为调用扫描器函数gettok()函数返回的当前token
α | T(α) |
终结符A | if(t==A) t = gettok(); else error(); |
非终结符Y | Y(); |
α1|α2|…|αk | if(t∈D(α1)) T(α1) else if (t∈D(α2)) T(α2) … else if (t∈D(αk)) T(αk) else error(); |
α1α2…αk | T(α1)T(α2)…T(αk) |
[α] | if(t∈D(α)) T(α) |
{α} | while (t∈D(α)) T(α) |