CScriptObject: Make use of ranged for where applicable

This commit is contained in:
Lioncash 2020-06-19 21:45:11 -04:00
parent 9f8ecc855b
commit d93810568b

View File

@ -199,7 +199,7 @@ void CScriptObject::RemoveLink(ELinkType Type, CLink *pLink)
{ {
std::vector<CLink*> *pLinkVec = (Type == ELinkType::Incoming ? &mInLinks : &mOutLinks); std::vector<CLink*> *pLinkVec = (Type == ELinkType::Incoming ? &mInLinks : &mOutLinks);
for (auto it = pLinkVec->begin(); it != pLinkVec->end(); it++) for (auto it = pLinkVec->begin(); it != pLinkVec->end(); ++it)
{ {
if (*it == pLink) if (*it == pLink)
{ {
@ -211,20 +211,20 @@ void CScriptObject::RemoveLink(ELinkType Type, CLink *pLink)
void CScriptObject::BreakAllLinks() void CScriptObject::BreakAllLinks()
{ {
for (auto it = mInLinks.begin(); it != mInLinks.end(); it++) for (auto* link : mInLinks)
{ {
CLink *pLink = *it; if (CScriptObject* sender = link->Sender())
CScriptObject *pSender = pLink->Sender(); sender->RemoveLink(ELinkType::Outgoing, link);
if (pSender) pSender->RemoveLink(ELinkType::Outgoing, pLink);
delete pLink; delete link;
} }
for (auto it = mOutLinks.begin(); it != mOutLinks.end(); it++) for (auto* link : mOutLinks)
{ {
CLink *pLink = *it; if (CScriptObject* receiver = link->Receiver())
CScriptObject *pReceiver = pLink->Receiver(); receiver->RemoveLink(ELinkType::Incoming, link);
if (pReceiver) pReceiver->RemoveLink(ELinkType::Incoming, pLink);
delete pLink; delete link;
} }
mInLinks.clear(); mInLinks.clear();