/** * * @brief removes all call transitions to or from the given state * * @param - state: the state whose transitions to remove * @return false if no transitions were removed, true otherwise * */ bool TransitionStorage::removeCallTransWith( State state ) { Calls outgoing = T_info.callTrans(state); Calls incoming = T_info.entryTrans(state); //Remove the transitions. for( CallIterator rit = outgoing.begin(); rit != outgoing.end(); rit++ ) { removeCall(*rit); } //Remove the transitions. for( CallIterator rit = incoming.begin(); rit != incoming.end(); rit++ ) { removeCall(*rit); } return (outgoing.size() > 0) || (incoming.size() > 0); }
/** * * @brief removes all call transitions with the given symbol * * @param - sym: the symbol whose transitions to remove * @return false if no transitions were removed, true otherwise * */ bool TransitionStorage::removeCallTransSym( Symbol sym ) { Calls removeTrans; //Find transitions to remove. for( CallIterator cit = callTrans.begin(); cit != callTrans.end(); cit++ ) { if( getCallSym(*cit) == sym ) removeTrans.insert(*cit); } //Remove transitions. for( CallIterator rit = removeTrans.begin(); rit != removeTrans.end(); rit++ ) { removeCall(*rit); } return removeTrans.size() > 0; }