使用する構文の情報
使用する構文の情報
保持しているLRアイテムの数
クロージャー展開を行う
TODO: リファクタリング
保持しているClosureItemの配列を得る
trueを与えると配列をコピーせず返す
得られた配列に変更が加えられないと保証される場合に用いる
LR(0)アイテム集合としてのハッシュ文字列を得る
LR(1)アイテム集合としてのハッシュ文字列を得る
LRアイテムが集合に含まれているかどうかを調べる
LR(0)ハッシュの一致を調べる
比較対象のアイテム集合
LR(1)ハッシュの一致を調べる
比較対象のアイテム集合
LR(0)部分が同じ2つのClosureSetについて、先読み部分を統合した新しいClosureSetを生成する
異なるLR(0)アイテム集合であった場合、nullを返す
マージ対象のアイテム集合
先読み部分がマージされた新しいアイテム集合
自身が保持する複数のClosureItemは、常にLR(1)ハッシュによってソートされた状態に保たれているようにする
ハッシュ文字列を生成する
Generated using TypeDoc
複数のLRアイテムを保持するアイテム集合であり、インスタンス生成時に自身をクロージャー展開する
GrammarDBから与えられるトークンIDをもとにして、LR(0)およびLR(1)アイテム集合としてのハッシュ値を生成することができる
Immutableであるべきオブジェクトであるため、インスタンス生成後は内部状態が変化することはないと仮定される