@@ -35,12 +35,33 @@ namespace std {
35
35
class Predicate>
36
36
typename flat_map<Key, T, Compare, KeyContainer, MappedContainer>::size_type
37
37
erase_if(flat_map<Key, T, Compare, KeyContainer, MappedContainer>& c, Predicate pred);
38
+
39
+ // [flat.multimap], class template flat_multimap
40
+ template<class Key, class T, class Compare = less<Key>,
41
+ class KeyContainer = vector<Key>, class MappedContainer = vector<T>>
42
+ class flat_multimap;
43
+
44
+ struct sorted_equivalent_t { explicit sorted_equivalent_t() = default; };
45
+ inline constexpr sorted_equivalent_t sorted_equivalent{};
46
+
47
+ template<class Key, class T, class Compare, class KeyContainer, class MappedContainer,
48
+ class Allocator>
49
+ struct uses_allocator<flat_multimap<Key, T, Compare, KeyContainer, MappedContainer>,
50
+ Allocator>;
51
+
52
+ // [flat.multimap.erasure], erasure for flat_multimap
53
+ template<class Key, class T, class Compare, class KeyContainer, class MappedContainer,
54
+ class Predicate>
55
+ typename flat_multimap<Key, T, Compare, KeyContainer, MappedContainer>::size_type
56
+ erase_if(flat_multimap<Key, T, Compare, KeyContainer, MappedContainer>& c, Predicate pred);
38
57
*/
39
58
40
59
#include < __assert> // all public C++ headers provide the assertion handler
41
60
#include < __config>
42
61
#include < __flat_map/flat_map.h>
62
+ #include < __flat_map/flat_multimap.h>
43
63
#include < __flat_map/sorted_unique.h>
64
+ #include < __flat_map/sorted_equivalent.h>
44
65
#include < version>
45
66
46
67
// standard required includes
0 commit comments