From 747128b093b2b54cdd69645adc20d74f97759335 Mon Sep 17 00:00:00 2001 From: Lioncash Date: Fri, 7 Jun 2019 17:13:08 -0400 Subject: [PATCH] DSP/LabelMap: Collapse DeleteLabel loop into std::find_if Same thing, no explicit loops. --- Source/Core/Core/DSP/LabelMap.cpp | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/Source/Core/Core/DSP/LabelMap.cpp b/Source/Core/Core/DSP/LabelMap.cpp index ef3c6479f8..79aa503f45 100644 --- a/Source/Core/Core/DSP/LabelMap.cpp +++ b/Source/Core/Core/DSP/LabelMap.cpp @@ -4,6 +4,7 @@ #include "Core/DSP/LabelMap.h" +#include #include #include @@ -44,14 +45,13 @@ void LabelMap::RegisterLabel(const std::string& label, u16 lval, LabelType type) void LabelMap::DeleteLabel(const std::string& label) { - for (std::vector::iterator iter = labels.begin(); iter != labels.end(); ++iter) - { - if (!label.compare(iter->name)) - { - labels.erase(iter); - return; - } - } + const auto iter = std::find_if(labels.cbegin(), labels.cend(), + [&label](const auto& entry) { return entry.name == label; }); + + if (iter == labels.cend()) + return; + + labels.erase(iter); } bool LabelMap::GetLabelValue(const std::string& name, u16* value, LabelType type) const