public StateSet(Nonterminal predictionSeedNonterminal = null) {
_items = new List<Item>();
_seenItems = new Dictionary<Item, Item>(new ItemComparer());
_nonterminalsPredicted = new HashSet<Nonterminal>();
if (predictionSeedNonterminal != null) {
_nonterminalsPredicted.Add(predictionSeedNonterminal);
}
_magicItems = new List<Item>();
}