Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::container::multiset< Key, Compare, Allocator, MultiSetOptions > Class Template Reference

#include <set.hpp>

Public Types

typedef Key key_type
 
typedef Key value_type
 
typedef Compare key_compare
 
typedef Compare value_compare
 
typedef
::boost::container::allocator_traits
< Allocator > 
allocator_traits_type
 
typedef
::boost::container::allocator_traits
< Allocator >::pointer 
pointer
 
typedef
::boost::container::allocator_traits
< Allocator >::const_pointer 
const_pointer
 
typedef
::boost::container::allocator_traits
< Allocator >::reference 
reference
 
typedef
::boost::container::allocator_traits
< Allocator >::const_reference 
const_reference
 
typedef
::boost::container::allocator_traits
< Allocator >::size_type 
size_type
 
typedef
::boost::container::allocator_traits
< Allocator >::difference_type 
difference_type
 
typedef Allocator allocator_type
 

Public Member Functions

typedef BOOST_CONTAINER_IMPDEF (base_t::stored_allocator_type) stored_allocator_type
 
typedef BOOST_CONTAINER_IMPDEF (base_t::iterator) iterator
 
typedef BOOST_CONTAINER_IMPDEF (base_t::const_iterator) const _iterator
 
typedef BOOST_CONTAINER_IMPDEF (base_t::reverse_iterator) reverse_iterator
 
typedef BOOST_CONTAINER_IMPDEF (base_t::const_reverse_iterator) const _reverse_iterator
 
 multiset ()
 Effects: Default constructs an empty set. More...
 
 multiset (const Compare &comp, const allocator_type &a=allocator_type())
 Effects: Constructs an empty set using the specified comparison object and allocator. More...
 
 multiset (const allocator_type &a)
 Effects: Constructs an empty set using the specified allocator object. More...
 
template<class InputIterator >
 multiset (InputIterator first, InputIterator last, const Compare &comp=Compare(), const allocator_type &a=allocator_type())
 Effects: Constructs an empty set using the specified comparison object and allocator, and inserts elements from the range [first ,last ). More...
 
template<class InputIterator >
 multiset (ordered_range_t, InputIterator first, InputIterator last, const Compare &comp=Compare(), const allocator_type &a=allocator_type())
 Effects: Constructs an empty multiset using the specified comparison object and allocator, and inserts elements from the ordered range [first ,last ). More...
 
 multiset (std::initializer_list< value_type > il, const Compare &comp=Compare(), const allocator_type &a=allocator_type())
 Effects: Constructs an empty set using the specified comparison object and allocator, and inserts elements from the range [il.begin(), il.end()). More...
 
 multiset (ordered_unique_range_t, std::initializer_list< value_type > il, const Compare &comp=Compare(), const allocator_type &a=allocator_type())
 Effects: Constructs an empty set using the specified comparison object and allocator, and inserts elements from the ordered unique range [il.begin(), il.end()). More...
 
 multiset (const multiset &x)
 Effects: Copy constructs a set. More...
 
 multiset (BOOST_RV_REF(multiset) x)
 
 multiset (const multiset &x, const allocator_type &a)
 
 multiset (BOOST_RV_REF(multiset) x, const allocator_type &a)
 
multisetoperator= (BOOST_COPY_ASSIGN_REF(multiset) x)
 
multisetoperator= (BOOST_RV_REF(multiset) x)
 
multisetoperator= (std::initializer_list< value_type > il)
 
template<class InputIterator >
void insert (InputIterator first, InputIterator last)
 Requires: first, last are not iterators into *this. More...
 
void insert (std::initializer_list< value_type > il)
 Effects: inserts each element from the range [il.begin(),il.end()) if and only if there is no element with key equivalent to the key of that element. More...
 

Member Typedef Documentation

template<class Key , class Compare , class Allocator , class MultiSetOptions >
typedef ::boost::container::allocator_traits<Allocator> boost::container::multiset< Key, Compare, Allocator, MultiSetOptions >::allocator_traits_type
template<class Key , class Compare , class Allocator , class MultiSetOptions >
typedef Allocator boost::container::multiset< Key, Compare, Allocator, MultiSetOptions >::allocator_type
template<class Key , class Compare , class Allocator , class MultiSetOptions >
typedef ::boost::container::allocator_traits<Allocator>::const_pointer boost::container::multiset< Key, Compare, Allocator, MultiSetOptions >::const_pointer
template<class Key , class Compare , class Allocator , class MultiSetOptions >
typedef ::boost::container::allocator_traits<Allocator>::const_reference boost::container::multiset< Key, Compare, Allocator, MultiSetOptions >::const_reference
template<class Key , class Compare , class Allocator , class MultiSetOptions >
typedef ::boost::container::allocator_traits<Allocator>::difference_type boost::container::multiset< Key, Compare, Allocator, MultiSetOptions >::difference_type
template<class Key , class Compare , class Allocator , class MultiSetOptions >
typedef Compare boost::container::multiset< Key, Compare, Allocator, MultiSetOptions >::key_compare
template<class Key , class Compare , class Allocator , class MultiSetOptions >
typedef Key boost::container::multiset< Key, Compare, Allocator, MultiSetOptions >::key_type
template<class Key , class Compare , class Allocator , class MultiSetOptions >
typedef ::boost::container::allocator_traits<Allocator>::pointer boost::container::multiset< Key, Compare, Allocator, MultiSetOptions >::pointer
template<class Key , class Compare , class Allocator , class MultiSetOptions >
typedef ::boost::container::allocator_traits<Allocator>::reference boost::container::multiset< Key, Compare, Allocator, MultiSetOptions >::reference
template<class Key , class Compare , class Allocator , class MultiSetOptions >
typedef ::boost::container::allocator_traits<Allocator>::size_type boost::container::multiset< Key, Compare, Allocator, MultiSetOptions >::size_type
template<class Key , class Compare , class Allocator , class MultiSetOptions >
typedef Compare boost::container::multiset< Key, Compare, Allocator, MultiSetOptions >::value_compare
template<class Key , class Compare , class Allocator , class MultiSetOptions >
typedef Key boost::container::multiset< Key, Compare, Allocator, MultiSetOptions >::value_type

Constructor & Destructor Documentation

template<class Key , class Compare , class Allocator , class MultiSetOptions >
boost::container::multiset< Key, Compare, Allocator, MultiSetOptions >::multiset ( )
inline

Effects: Default constructs an empty set.

Complexity: Constant.

template<class Key , class Compare , class Allocator , class MultiSetOptions >
boost::container::multiset< Key, Compare, Allocator, MultiSetOptions >::multiset ( const Compare &  comp,
const allocator_type a = allocator_type() 
)
inlineexplicit

Effects: Constructs an empty set using the specified comparison object and allocator.

Complexity: Constant.

template<class Key , class Compare , class Allocator , class MultiSetOptions >
boost::container::multiset< Key, Compare, Allocator, MultiSetOptions >::multiset ( const allocator_type a)
inlineexplicit

Effects: Constructs an empty set using the specified allocator object.

Complexity: Constant.

template<class Key , class Compare , class Allocator , class MultiSetOptions >
template<class InputIterator >
boost::container::multiset< Key, Compare, Allocator, MultiSetOptions >::multiset ( InputIterator  first,
InputIterator  last,
const Compare &  comp = Compare(),
const allocator_type a = allocator_type() 
)
inline

Effects: Constructs an empty set using the specified comparison object and allocator, and inserts elements from the range [first ,last ).

Complexity: Linear in N if the range [first ,last ) is already sorted using comp and otherwise N logN, where N is last - first.

template<class Key , class Compare , class Allocator , class MultiSetOptions >
template<class InputIterator >
boost::container::multiset< Key, Compare, Allocator, MultiSetOptions >::multiset ( ordered_range_t  ,
InputIterator  first,
InputIterator  last,
const Compare &  comp = Compare(),
const allocator_type a = allocator_type() 
)
inline

Effects: Constructs an empty multiset using the specified comparison object and allocator, and inserts elements from the ordered range [first ,last ).

This function is more efficient than the normal range creation for ordered ranges.

Requires: [first ,last) must be ordered according to the predicate.

Complexity: Linear in N.

Note: Non-standard extension.

template<class Key , class Compare , class Allocator , class MultiSetOptions >
boost::container::multiset< Key, Compare, Allocator, MultiSetOptions >::multiset ( std::initializer_list< value_type il,
const Compare &  comp = Compare(),
const allocator_type a = allocator_type() 
)
inline

Effects: Constructs an empty set using the specified comparison object and allocator, and inserts elements from the range [il.begin(), il.end()).

Complexity: Linear in N if the range [il.begin(), il.end()) is already sorted using comp and otherwise N logN, where N is il.begin() - il.end().

template<class Key , class Compare , class Allocator , class MultiSetOptions >
boost::container::multiset< Key, Compare, Allocator, MultiSetOptions >::multiset ( ordered_unique_range_t  ,
std::initializer_list< value_type il,
const Compare &  comp = Compare(),
const allocator_type a = allocator_type() 
)
inline

Effects: Constructs an empty set using the specified comparison object and allocator, and inserts elements from the ordered unique range [il.begin(), il.end()).

This function is more efficient than the normal range creation for ordered ranges.

Requires: [il.begin(), il.end()) must be ordered according to the predicate and must be unique values.

Complexity: Linear in N.

Note: Non-standard extension.

template<class Key , class Compare , class Allocator , class MultiSetOptions >
boost::container::multiset< Key, Compare, Allocator, MultiSetOptions >::multiset ( const multiset< Key, Compare, Allocator, MultiSetOptions > &  x)
inline

Effects: Copy constructs a set.

Complexity: Linear in x.size().

template<class Key , class Compare , class Allocator , class MultiSetOptions >
boost::container::multiset< Key, Compare, Allocator, MultiSetOptions >::multiset ( BOOST_RV_REF(multiset< Key, Compare, Allocator, MultiSetOptions >)  x)
inline

template<class Key , class Compare , class Allocator , class MultiSetOptions >
boost::container::multiset< Key, Compare, Allocator, MultiSetOptions >::multiset ( const multiset< Key, Compare, Allocator, MultiSetOptions > &  x,
const allocator_type a 
)
inline

template<class Key , class Compare , class Allocator , class MultiSetOptions >
boost::container::multiset< Key, Compare, Allocator, MultiSetOptions >::multiset ( BOOST_RV_REF(multiset< Key, Compare, Allocator, MultiSetOptions >)  x,
const allocator_type a 
)
inline

Member Function Documentation

template<class Key , class Compare , class Allocator , class MultiSetOptions >
typedef boost::container::multiset< Key, Compare, Allocator, MultiSetOptions >::BOOST_CONTAINER_IMPDEF ( base_t::stored_allocator_type  )
template<class Key , class Compare , class Allocator , class MultiSetOptions >
typedef boost::container::multiset< Key, Compare, Allocator, MultiSetOptions >::BOOST_CONTAINER_IMPDEF ( base_t::iterator  )
template<class Key , class Compare , class Allocator , class MultiSetOptions >
typedef boost::container::multiset< Key, Compare, Allocator, MultiSetOptions >::BOOST_CONTAINER_IMPDEF ( base_t::const_iterator  ) const
template<class Key , class Compare , class Allocator , class MultiSetOptions >
typedef boost::container::multiset< Key, Compare, Allocator, MultiSetOptions >::BOOST_CONTAINER_IMPDEF ( base_t::reverse_iterator  )
template<class Key , class Compare , class Allocator , class MultiSetOptions >
typedef boost::container::multiset< Key, Compare, Allocator, MultiSetOptions >::BOOST_CONTAINER_IMPDEF ( base_t::const_reverse_iterator  ) const
template<class Key , class Compare , class Allocator , class MultiSetOptions >
template<class InputIterator >
void boost::container::multiset< Key, Compare, Allocator, MultiSetOptions >::insert ( InputIterator  first,
InputIterator  last 
)
inline

Requires: first, last are not iterators into *this.

Effects: inserts each element from the range [first,last) .

Complexity: At most N log(size()+N) (N is the distance from first to last)

template<class Key , class Compare , class Allocator , class MultiSetOptions >
void boost::container::multiset< Key, Compare, Allocator, MultiSetOptions >::insert ( std::initializer_list< value_type il)
inline

Effects: inserts each element from the range [il.begin(),il.end()) if and only if there is no element with key equivalent to the key of that element.

Complexity: At most N log(size()+N) (N is the distance from il.begin() to il.end())

template<class Key , class Compare , class Allocator , class MultiSetOptions >
multiset& boost::container::multiset< Key, Compare, Allocator, MultiSetOptions >::operator= ( BOOST_COPY_ASSIGN_REF(multiset< Key, Compare, Allocator, MultiSetOptions >)  x)
inline
template<class Key , class Compare , class Allocator , class MultiSetOptions >
multiset& boost::container::multiset< Key, Compare, Allocator, MultiSetOptions >::operator= ( BOOST_RV_REF(multiset< Key, Compare, Allocator, MultiSetOptions >)  x)
inline
template<class Key , class Compare , class Allocator , class MultiSetOptions >
multiset& boost::container::multiset< Key, Compare, Allocator, MultiSetOptions >::operator= ( std::initializer_list< value_type il)
inline


The documentation for this class was generated from the following files: