TL; DR VERSION:以下をサポートするパーサージェネレータがあります:いくつかのルールが縮小されたとき(私はLALR(1)パーサと仮定します)、縮小は実行されませんパーザはこのルールの値を使用して入力を別のコードに置き換え、そのコードを解析します。必要に応じて繰り返します。コードは「私は++」とルールは「exprのPOST_INCR」であるのであれば、私は、多かれ少なかれを行うことができ
現在、Decaf(プログラミング言語)文法の一部を実装しています。ここでバイソンコードの関連するスニペットは次のとおりです。 type:
INT
| ID
| type LS RS
;
local_var_decl:
type ID SEMICOLON
;
name:
THIS
| ID
| name