Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(7930)

Unified Diff: base/stl_util.h

Issue 2746053002: Fix Template Parameter List for Associative Containers in base::EraseIf (Closed)
Patch Set: Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | base/stl_util_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: base/stl_util.h
diff --git a/base/stl_util.h b/base/stl_util.h
index 2cec11b2e6c9069af85f3e1e7f4a600d5c4b2337..b0670b295eb87d9a28d5621f3f86883fa038a39f 100644
--- a/base/stl_util.h
+++ b/base/stl_util.h
@@ -222,43 +222,68 @@ void EraseIf(std::list<T, Allocator>& container, Predicate pred) {
container.remove_if(pred);
}
-template <class T, class Allocator, class Predicate>
-void EraseIf(std::map<T, Allocator>& container, Predicate pred) {
+template <class Key, class T, class Compare, class Allocator, class Predicate>
+void EraseIf(std::map<Key, T, Compare, Allocator>& container, Predicate pred) {
internal::IterateAndEraseIf(container, pred);
}
-template <class T, class Allocator, class Predicate>
-void EraseIf(std::multimap<T, Allocator>& container, Predicate pred) {
+template <class Key, class T, class Compare, class Allocator, class Predicate>
+void EraseIf(std::multimap<Key, T, Compare, Allocator>& container,
+ Predicate pred) {
internal::IterateAndEraseIf(container, pred);
}
-template <class T, class Allocator, class Predicate>
-void EraseIf(std::set<T, Allocator>& container, Predicate pred) {
+template <class Key, class Compare, class Allocator, class Predicate>
+void EraseIf(std::set<Key, Compare, Allocator>& container, Predicate pred) {
internal::IterateAndEraseIf(container, pred);
}
-template <class T, class Allocator, class Predicate>
-void EraseIf(std::multiset<T, Allocator>& container, Predicate pred) {
+template <class Key, class Compare, class Allocator, class Predicate>
+void EraseIf(std::multiset<Key, Compare, Allocator>& container,
+ Predicate pred) {
internal::IterateAndEraseIf(container, pred);
}
-template <class T, class Allocator, class Predicate>
-void EraseIf(std::unordered_map<T, Allocator>& container, Predicate pred) {
+template <class Key,
+ class T,
+ class Hash,
+ class KeyEqual,
+ class Allocator,
+ class Predicate>
+void EraseIf(std::unordered_map<Key, T, Hash, KeyEqual, Allocator>& container,
+ Predicate pred) {
internal::IterateAndEraseIf(container, pred);
}
-template <class T, class Allocator, class Predicate>
-void EraseIf(std::unordered_multimap<T, Allocator>& container, Predicate pred) {
+template <class Key,
+ class T,
+ class Hash,
+ class KeyEqual,
+ class Allocator,
+ class Predicate>
+void EraseIf(
+ std::unordered_multimap<Key, T, Hash, KeyEqual, Allocator>& container,
+ Predicate pred) {
internal::IterateAndEraseIf(container, pred);
}
-template <class T, class Allocator, class Predicate>
-void EraseIf(std::unordered_set<T, Allocator>& container, Predicate pred) {
+template <class Key,
+ class Hash,
+ class KeyEqual,
+ class Allocator,
+ class Predicate>
+void EraseIf(std::unordered_set<Key, Hash, KeyEqual, Allocator>& container,
+ Predicate pred) {
internal::IterateAndEraseIf(container, pred);
}
-template <class T, class Allocator, class Predicate>
-void EraseIf(std::unordered_multiset<T, Allocator>& container, Predicate pred) {
+template <class Key,
+ class Hash,
+ class KeyEqual,
+ class Allocator,
+ class Predicate>
+void EraseIf(std::unordered_multiset<Key, Hash, KeyEqual, Allocator>& container,
+ Predicate pred) {
internal::IterateAndEraseIf(container, pred);
}
« no previous file with comments | « no previous file | base/stl_util_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698