aboutsummaryrefslogtreecommitdiff
path: root/src/server/shared/Containers.h
diff options
context:
space:
mode:
authorCarbenium <carbenium@outlook.com>2015-09-23 20:21:20 +0200
committerCarbenium <carbenium@outlook.com>2015-09-23 20:21:20 +0200
commitff31a1d9eddccca5f8077bb35cd5a7f7740f467d (patch)
tree93a1bc20a25da58e73f356c8dfa14b4b07154748 /src/server/shared/Containers.h
parentd476e0eff24af5849bbbc21128aa461a24d4fe9b (diff)
parentdcb7082277447c21b11c4a1d59f105fa342c172e (diff)
Merge pull request #15313 from pete318/map_local_guid_335
[3.3.5/Core/Map] map local guids 6.x -> 3.3.5
Diffstat (limited to 'src/server/shared/Containers.h')
-rw-r--r--src/server/shared/Containers.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/server/shared/Containers.h b/src/server/shared/Containers.h
index 58379e1fefa..0e5752ccd68 100644
--- a/src/server/shared/Containers.h
+++ b/src/server/shared/Containers.h
@@ -92,6 +92,20 @@ 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
}