aboutsummaryrefslogtreecommitdiff
path: root/src/server/shared/Containers.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/shared/Containers.h')
-rw-r--r--src/server/shared/Containers.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/server/shared/Containers.h b/src/server/shared/Containers.h
index 5dee18cb752..685acea05e3 100644
--- a/src/server/shared/Containers.h
+++ b/src/server/shared/Containers.h
@@ -92,6 +92,19 @@ namespace Trinity
return false;
}
+
+ template<class K, class V, template<class, class, class...> class M, class... Rest>
+ void MultimapErasePair(M<K, V, Rest...>& multimap, K const& key, V const& value)
+ {
+ auto range = multimap.equal_range(key);
+ for (auto itr = range.first; itr != range.second;)
+ {
+ if (itr->second == value)
+ itr = multimap.erase(itr);
+ else
+ ++itr;
+ }
+ }
}
//! namespace Containers
}