void CBNFParser::CNonTerminal::AddToHash(CHash<CRule const *> &hashRules) const { CHash<CRule const *>::TIter it = hashRules.Find(this); if (!it) { hashRules.Add(this); for (int i = 0; i < MAX_CHILD_RULES && m_pChildren[i]; ++i) m_pChildren[i]->AddToHash(hashRules); } }