@@ -17620,21 +17620,26 @@
17620
17620
// \ref{flat.multiset.cons}, constructors
17621
17621
flat_multiset() : flat_multiset(key_compare()) { }
17622
17622
17623
+ explicit flat_multiset(const key_compare& comp)
17624
+ : @\exposid{c}@(), @\exposid{compare}@(comp) { }
17625
+
17623
17626
explicit flat_multiset(container_type cont, const key_compare& comp = key_compare());
17624
17627
17625
17628
flat_multiset(sorted_equivalent_t, container_type cont,
17626
17629
const key_compare& comp = key_compare())
17627
17630
: @\exposid{c}@(std::move(cont)), @\exposid{compare}@(comp) { }
17628
17631
17629
- explicit flat_multiset(const key_compare& comp)
17630
- : @\exposid{c}@(), @\exposid{compare}@(comp) { }
17631
-
17632
17632
template<class InputIterator>
17633
17633
flat_multiset(InputIterator first, InputIterator last,
17634
17634
const key_compare& comp = key_compare())
17635
17635
: @\exposid{c}@(), @\exposid{compare}@(comp)
17636
17636
{ insert(first, last); }
17637
17637
17638
+ template<class InputIterator>
17639
+ flat_multiset(sorted_equivalent_t, InputIterator first, InputIterator last,
17640
+ const key_compare& comp = key_compare())
17641
+ : @\exposid{c}@(first, last), @\exposid{compare}@(comp) { }
17642
+
17638
17643
template<@\exposconcept{container-compatible-range}@<value_type> R>
17639
17644
flat_multiset(from_range_t fr, R&& rg)
17640
17645
: flat_multiset(fr, std::forward<R>(rg), key_compare()) { }
17643
17648
: flat_multiset(comp)
17644
17649
{ insert_range(std::forward<R>(rg)); }
17645
17650
17646
- template<class InputIterator>
17647
- flat_multiset(sorted_equivalent_t, InputIterator first, InputIterator last,
17648
- const key_compare& comp = key_compare())
17649
- : @\exposid{c}@(first, last), @\exposid{compare}@(comp) { }
17650
-
17651
17651
flat_multiset(initializer_list<value_type> il, const key_compare& comp = key_compare())
17652
17652
: flat_multiset(il.begin(), il.end(), comp) { }
17653
17653
17658
17658
// \ref{flat.multiset.cons.alloc}, constructors with allocators
17659
17659
17660
17660
template<class Alloc>
17661
- flat_multiset(const flat_multiset&, const Alloc& a);
17661
+ explicit flat_multiset( const Alloc& a);
17662
17662
template<class Alloc>
17663
- flat_multiset(flat_multiset&& , const Alloc& a);
17663
+ flat_multiset(const key_compare& comp , const Alloc& a);
17664
17664
template<class Alloc>
17665
17665
flat_multiset(const container_type& cont, const Alloc& a);
17666
17666
template<class Alloc>
@@ -17671,34 +17671,34 @@
17671
17671
flat_multiset(sorted_equivalent_t, const container_type& cont,
17672
17672
const key_compare& comp, const Alloc& a);
17673
17673
template<class Alloc>
17674
- flat_multiset(const key_compare& comp , const Alloc& a);
17674
+ flat_multiset(const flat_multiset& , const Alloc& a);
17675
17675
template<class Alloc>
17676
- explicit flat_multiset(const Alloc& a);
17676
+ flat_multiset(flat_multiset&&, const Alloc& a);
17677
+ template<class InputIterator, class Alloc>
17678
+ flat_multiset(InputIterator first, InputIterator last, const Alloc& a);
17677
17679
template<class InputIterator, class Alloc>
17678
17680
flat_multiset(InputIterator first, InputIterator last,
17679
17681
const key_compare& comp, const Alloc& a);
17680
17682
template<class InputIterator, class Alloc>
17681
- flat_multiset(InputIterator first, InputIterator last, const Alloc& a);
17683
+ flat_multiset(sorted_equivalent_t, InputIterator first, InputIterator last,
17684
+ const Alloc& a);
17685
+ template<class InputIterator, class Alloc>
17686
+ flat_multiset(sorted_equivalent_t, InputIterator first, InputIterator last,
17687
+ const key_compare& comp, const Alloc& a);
17682
17688
template<@\exposconcept{container-compatible-range}@<value_type> R, class Alloc>
17683
17689
flat_multiset(from_range_t, R&& rg, const Alloc& a);
17684
17690
template<@\exposconcept{container-compatible-range}@<value_type> R, class Alloc>
17685
17691
flat_multiset(from_range_t, R&& rg, const key_compare& comp, const Alloc& a);
17686
- template<class InputIterator, class Alloc>
17687
- flat_multiset(sorted_equivalent_t, InputIterator first, InputIterator last,
17688
- const key_compare& comp, const Alloc& a);
17689
- template<class InputIterator, class Alloc>
17690
- flat_multiset(sorted_equivalent_t, InputIterator first, InputIterator last,
17691
- const Alloc& a);
17692
+ template<class Alloc>
17693
+ flat_multiset(initializer_list<value_type> il, const Alloc& a);
17692
17694
template<class Alloc>
17693
17695
flat_multiset(initializer_list<value_type> il, const key_compare& comp,
17694
17696
const Alloc& a);
17695
17697
template<class Alloc>
17696
- flat_multiset(initializer_list<value_type> il, const Alloc& a);
17698
+ flat_multiset(sorted_equivalent_t, initializer_list<value_type> il, const Alloc& a);
17697
17699
template<class Alloc>
17698
17700
flat_multiset(sorted_equivalent_t, initializer_list<value_type> il,
17699
17701
const key_compare& comp, const Alloc& a);
17700
- template<class Alloc>
17701
- flat_multiset(sorted_equivalent_t, initializer_list<value_type> il, const Alloc& a);
17702
17702
17703
17703
flat_multiset& operator=(initializer_list<value_type>);
17704
17704
@@ -17937,36 +17937,36 @@
17937
17937
\indexlibraryctor{flat_multiset}%
17938
17938
\begin{itemdecl}
17939
17939
template<class Alloc>
17940
- flat_multiset(const flat_multiset&, const Alloc& a);
17941
- template<class Alloc>
17942
- flat_multiset(flat_multiset&&, const Alloc& a);
17940
+ explicit flat_multiset(const Alloc& a);
17943
17941
template<class Alloc>
17944
17942
flat_multiset(const key_compare& comp, const Alloc& a);
17945
17943
template<class Alloc>
17946
- explicit flat_multiset(const Alloc& a);
17944
+ flat_multiset(const flat_multiset&, const Alloc& a);
17945
+ template<class Alloc>
17946
+ flat_multiset(flat_multiset&&, const Alloc& a);
17947
+ template<class InputIterator, class Alloc>
17948
+ flat_multiset(InputIterator first, InputIterator last, const Alloc& a);
17947
17949
template<class InputIterator, class Alloc>
17948
17950
flat_multiset(InputIterator first, InputIterator last,
17949
17951
const key_compare& comp, const Alloc& a);
17950
17952
template<class InputIterator, class Alloc>
17951
- flat_multiset(InputIterator first, InputIterator last, const Alloc& a);
17953
+ flat_multiset(sorted_equivalent_t, InputIterator first, InputIterator last, const Alloc& a);
17954
+ template<class InputIterator, class Alloc>
17955
+ flat_multiset(sorted_equivalent_t, InputIterator first, InputIterator last,
17956
+ const key_compare& comp, const Alloc& a);
17952
17957
template<@\exposconcept{container-compatible-range}@<value_type> R, class Alloc>
17953
17958
flat_multiset(from_range_t, R&& rg, const Alloc& a);
17954
17959
template<@\exposconcept{container-compatible-range}@<value_type> R, class Alloc>
17955
17960
flat_multiset(from_range_t, R&& rg, const key_compare& comp, const Alloc& a);
17956
- template<class InputIterator, class Alloc>
17957
- flat_multiset(sorted_equivalent_t, InputIterator first, InputIterator last,
17958
- const key_compare& comp, const Alloc& a);
17959
- template<class InputIterator, class Alloc>
17960
- flat_multiset(sorted_equivalent_t, InputIterator first, InputIterator last, const Alloc& a);
17961
+ template<class Alloc>
17962
+ flat_multiset(initializer_list<value_type> il, const Alloc& a);
17961
17963
template<class Alloc>
17962
17964
flat_multiset(initializer_list<value_type> il, const key_compare& comp, const Alloc& a);
17963
17965
template<class Alloc>
17964
- flat_multiset(initializer_list<value_type> il, const Alloc& a);
17966
+ flat_multiset(sorted_equivalent_t, initializer_list<value_type> il, const Alloc& a);
17965
17967
template<class Alloc>
17966
17968
flat_multiset(sorted_equivalent_t, initializer_list<value_type> il,
17967
17969
const key_compare& comp, const Alloc& a);
17968
- template<class Alloc>
17969
- flat_multiset(sorted_equivalent_t, initializer_list<value_type> il, const Alloc& a);
17970
17970
\end{itemdecl}
17971
17971
17972
17972
\begin{itemdescr}
0 commit comments