43template <
typename T,
typename Cmp = std::less < >,
typename Alloc = std::allocator < T > >
44class multiset :
public std::multiset < T, Cmp, Alloc > {
49 using std::multiset < T, Cmp, Alloc >::multiset;
54 using std::multiset < T, Cmp, Alloc >::operator =;
89 template <
class Iterator >
160 auto endIter =
end ( );
161 auto beginIter =
begin ( );
172 auto endIter =
end ( );
173 auto beginIter =
begin ( );
184 auto endIter = std::move ( * this ).end ( );
185 auto beginIter = std::move ( * this ).begin ( );
201 auto res = std::multiset < T, Cmp, Alloc >::equal_range ( std::forward < K > ( key ) );
217 auto res = std::multiset < T, Cmp, Alloc >::equal_range ( std::forward < K > ( key ) );
233 auto res = std::multiset < T, Cmp, Alloc >::equal_range ( std::forward < K > ( key ) );
252template<
class T,
class ... Ts >
257 for(
const T& item :
list) {
258 if(!first) out <<
", ";
Implementation of iterator_range, i.e. pair of iterators. The class provides most notably begin and e...
Definition: range.hpp:24
Class extending the list class from the standard library. Original reason is to allow printing of the...
Definition: list.hpp:44
Definition: multiset.hpp:44
auto range() const &
Make range of non-const begin to end iterators.
Definition: multiset.hpp:171
auto range() &&
Make range of move begin to end iterators.
Definition: multiset.hpp:183
auto begin() &
Inherited behavior of begin for non-const instance.
Definition: multiset.hpp:99
multiset(const multiset &other)=default
multiset(const ext::iterator_range< Iterator > &range)
Definition: multiset.hpp:90
auto end() const &
Inherited behavior of end for const instance.
Definition: multiset.hpp:139
auto begin() const &
Inherited behavior of begin for const instance.
Definition: multiset.hpp:109
auto equal_range(K &&key) const &
Make range of elements with key equal to the key.
Definition: multiset.hpp:200
auto equal_range(K &&key) &&
Make range of elements with key equal to the key.
Definition: multiset.hpp:232
multiset(multiset &&other)=default
auto begin() &&
New variant of begin for rvalues.
Definition: multiset.hpp:119
auto range() &
Make range of non-const begin to end iterators.
Definition: multiset.hpp:159
auto end() &&
New variant of end for rvalues.
Definition: multiset.hpp:149
auto equal_range(K &&key) &
Make range of elements with key equal to the key.
Definition: multiset.hpp:216
multiset & operator=(multiset &&other)=default
auto end() &
Inherited behavior of end for non-const instance.
Definition: multiset.hpp:129
p second
Definition: ToRegExpAlgebraic.h:126
return res
Definition: MinimizeByPartitioning.h:145
Definition: sigHandler.cpp:20
ext::multiset< T > operator+(const ext::multiset< T > &first, const ext::multiset< T > &second)
Implementation of union of two multisets.
Definition: multiset.hpp:279
set_move_iterator< Iterator > make_set_move_iterator(Iterator it)
Move from set iterator adaptor construction function.
Definition: iterator.hpp:200
iterator_range< Iter > make_iterator_range(Iter begin, Iter end)
Helper to create iterator_range from two iterators.
Definition: range.hpp:235
std::ostream & operator<<(ext::reference_wrapper< std::ostream > &os, std::ostream &(*const func)(std::ostream &))
Overloaded function allowing same operations on wrapped output stream as on the actual output stream,...
Definition: GlobalData.cpp:33
auto begin(Container &&cont) -> decltype(std::forward(cont).begin())
Definition: iterator.hpp:900
void end()
Definition: measurements.cpp:19