bool dDeterministicFiniteAutonata::CompareSets (dList<dAutomataState*>& setA, dTree<dAutomataState*,dAutomataState*>& setB) const { if (setA.GetCount() == setB.GetCount()) { for (dList<dAutomataState*>::dListNode* node = setA.GetFirst(); node; node = node->GetNext()) { if (!setB.Find(node->GetInfo())) { return false; } } return true; } return false; }
bool dBasicBlock::ComparedDominator(const dTree<int, const dBasicBlock*>& newdominators) const { if (m_dominators.GetCount() != newdominators.GetCount()) { return true; } dTree<int, const dBasicBlock*>::Iterator iter0 (m_dominators); dTree<int, const dBasicBlock*>::Iterator iter1 (newdominators); for (iter0.Begin(), iter1.Begin(); iter0 && iter1; iter0++, iter1++) { if (iter0.GetKey() != iter1.GetKey()) { return true; } } return false; }