STLdoc
STLdocumentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Types | Public Member Functions | List of all members
multimap< _Kty, _Ty, _Pr, _Alloc > Class Template Reference
Inheritance diagram for multimap< _Kty, _Ty, _Pr, _Alloc >:
_Tree< _Tmap_traits< _Kty, _Ty, _Pr, _Alloc, true > > _Tree_comp_alloc< _Tmap_traits< _Kty, _Ty, _Pr, _Alloc, true > >

Public Types

typedef multimap< _Kty, _Ty, _Pr, _Alloc_Myt
 
typedef _Tree< _Tmap_traits< _Kty, _Ty, _Pr, _Alloc, true > > _Mybase
 
typedef _Kty key_type
 
typedef _Ty mapped_type
 
typedef _Pr key_compare
 
typedef _Mybase::value_compare value_compare
 
typedef _Mybase::allocator_type allocator_type
 
typedef _Mybase::size_type size_type
 
typedef _Mybase::difference_type difference_type
 
typedef _Mybase::pointer pointer
 
typedef _Mybase::const_pointer const_pointer
 
typedef _Mybase::reference reference
 
typedef _Mybase::const_reference const_reference
 
typedef _Mybase::iterator iterator
 
typedef _Mybase::const_iterator const_iterator
 
typedef _Mybase::reverse_iterator reverse_iterator
 
typedef _Mybase::const_reverse_iterator const_reverse_iterator
 
typedef _Mybase::value_type value_type
 
typedef _Mybase::_Alty _Alty
 
- Public Types inherited from _Tree< _Tmap_traits< _Kty, _Ty, _Pr, _Alloc, true > >
enum  
 
typedef _Tree< _Tmap_traits< _Kty, _Ty, _Pr, _Alloc, true > > _Myt
 
typedef _Tree_comp_alloc< _Tmap_traits< _Kty, _Ty, _Pr, _Alloc, true > > _Mybase
 
typedef _Tmap_traits< _Kty, _Ty, _Pr, _Alloc, true >::key_type key_type
 
typedef _Tmap_traits< _Kty, _Ty, _Pr, _Alloc, true >::value_compare value_compare
 
typedef _Mybase::_Node _Node
 
typedef _Mybase::_Nodeptr _Nodeptr
 
typedef _Mybase::_Alty _Alty
 
typedef _Mybase::key_compare key_compare
 
typedef _Mybase::allocator_type allocator_type
 
typedef _Mybase::value_type value_type
 
typedef _Mybase::size_type size_type
 
typedef _Mybase::difference_type difference_type
 
typedef _Mybase::pointer pointer
 
typedef _Mybase::const_pointer const_pointer
 
typedef _Mybase::reference reference
 
typedef _Mybase::const_reference const_reference
 
typedef _Mybase::const_iterator const_iterator
 
typedef _If< is_same< key_type, value_type >::value, typename _Mybase::const_iterator, typename _Mybase::iterator >::type iterator
 
typedef _STD reverse_iterator< iteratorreverse_iterator
 
typedef _STD reverse_iterator< const_iteratorconst_reverse_iterator
 
typedef pair< iterator, bool_Pairib
 
typedef pair< iterator, iterator_Pairii
 
typedef pair< const_iterator, const_iterator_Paircc
 
- Public Types inherited from _Tree_comp_alloc< _Tmap_traits< _Kty, _Ty, _Pr, _Alloc, true > >
enum  _Redbl
 
typedef _Tree_comp_alloc< _Tmap_traits< _Kty, _Ty, _Pr, _Alloc, true > > _Myt
 
typedef _Tmap_traits< _Kty, _Ty, _Pr, _Alloc, true >::allocator_type allocator_type
 
typedef _Tmap_traits< _Kty, _Ty, _Pr, _Alloc, true >::key_compare key_compare
 
typedef _Tree_base_types< typename _Tmap_traits< _Kty, _Ty, _Pr, _Alloc, true >::value_type, allocator_type_Alloc_types
 
typedef _Alloc_types::_Alloc _Alloc
 
typedef _Alloc_types::_Alnod_type _Alty
 
typedef _Alloc_types::_Node _Node
 
typedef _Alloc_types::_Nodeptr _Nodeptr
 
typedef _Alloc_types::_Val_types _Val_types
 
typedef _Nodeptr_Nodepref
 
typedef _Val_types::value_type value_type
 
typedef _Val_types::size_type size_type
 
typedef _Val_types::difference_type difference_type
 
typedef _Val_types::pointer pointer
 
typedef _Val_types::const_pointer const_pointer
 
typedef _Val_types::reference reference
 
typedef _Val_types::const_reference const_reference
 
typedef _Tree_const_iterator< _Tree_val< _Val_types > > const_iterator
 
typedef _Tree_iterator< _Tree_val< _Val_types > > iterator
 

Public Member Functions

 multimap ()
 
 multimap (const allocator_type &_Al)
 
 multimap (const _Myt &_Right)
 
 multimap (const _Myt &_Right, const allocator_type &_Al)
 
 multimap (const key_compare &_Pred)
 
 multimap (const key_compare &_Pred, const allocator_type &_Al)
 
template<class _Iter >
 multimap (_Iter _First, _Iter _Last)
 
template<class _Iter >
 multimap (_Iter _First, _Iter _Last, const key_compare &_Pred)
 
template<class _Iter >
 multimap (_Iter _First, _Iter _Last, const allocator_type &_Al)
 
template<class _Iter >
 multimap (_Iter _First, _Iter _Last, const key_compare &_Pred, const allocator_type &_Al)
 
_Mytoperator= (const _Myt &_Right)
 
 multimap (_Myt &&_Right)
 
 multimap (_Myt &&_Right, const allocator_type &_Al)
 
_Mytoperator= (_Myt &&_Right) _NOEXCEPT_OP(_Alty
 
template<class... _Valty>
iterator emplace (_Valty &&..._Val)
 
void swap (_Myt &_Right) _NOEXCEPT_OP(_Alty
 
template<class _Valty , class = enable_if_t<is_constructible<value_type, _Valty>::value>>
iterator insert (_Valty &&_Val)
 
template<class _Valty , class = enable_if_t<is_constructible<value_type, _Valty>::value>>
iterator insert (const_iterator _Where, _Valty &&_Val)
 
 multimap (initializer_list< value_type > _Ilist)
 
 multimap (initializer_list< value_type > _Ilist, const key_compare &_Pred)
 
 multimap (initializer_list< value_type > _Ilist, const allocator_type &_Al)
 
 multimap (initializer_list< value_type > _Ilist, const key_compare &_Pred, const allocator_type &_Al)
 
_Mytoperator= (initializer_list< value_type > _Ilist)
 
- Public Member Functions inherited from _Tree< _Tmap_traits< _Kty, _Ty, _Pr, _Alloc, true > >
 _Tree (const key_compare &_Parg)
 
 _Tree (const key_compare &_Parg, const allocator_type &_Al)
 
 _Tree (const _Myt &_Right, _Any_alloc &&_Al)
 
 _Tree (_Myt &&_Right)
 
 _Tree (_Myt &&_Right, const allocator_type &_Al)
 
_Mytoperator= (_Myt &&_Right)
 
_Mytoperator= (const _Myt &_Right)
 
void _Assign_rv (_Myt &&_Right, true_type)
 
void _Assign_rv (_Myt &&_Right, false_type)
 
_Pairib emplace (_Valty &&..._Val)
 
iterator emplace_hint (const_iterator _Where, _Valty &&..._Val)
 
 ~_Tree () _NOEXCEPT
 
iterator begin () _NOEXCEPT
 
const_iterator begin () const _NOEXCEPT
 
iterator end () _NOEXCEPT
 
const_iterator end () const _NOEXCEPT
 
reverse_iterator rbegin () _NOEXCEPT
 
const_reverse_iterator rbegin () const _NOEXCEPT
 
reverse_iterator rend () _NOEXCEPT
 
const_reverse_iterator rend () const _NOEXCEPT
 
const_iterator cbegin () const _NOEXCEPT
 
const_iterator cend () const _NOEXCEPT
 
const_reverse_iterator crbegin () const _NOEXCEPT
 
const_reverse_iterator crend () const _NOEXCEPT
 
size_type size () const _NOEXCEPT
 
size_type max_size () const _NOEXCEPT
 
bool empty () const _NOEXCEPT
 
allocator_type get_allocator () const _NOEXCEPT
 
key_compare key_comp () const
 
value_compare value_comp () const
 
_Pairib insert (const value_type &_Val)
 
iterator insert (const value_type &_Val)
 
_Pairib insert (value_type &&_Val)
 
iterator insert (value_type &&_Val)
 
iterator insert (const_iterator _Where, const value_type &_Val)
 
iterator insert (const_iterator _Where, value_type &&_Val)
 
void insert (_Iter _First, _Iter _Last)
 
void insert (initializer_list< value_type > _Ilist)
 
iterator erase (const_iterator _Where)
 
iterator erase (const_iterator _First, const_iterator _Last)
 
size_type erase (const key_type &_Keyval)
 
void clear () _NOEXCEPT
 
iterator find (const key_type &_Keyval)
 
const_iterator find (const key_type &_Keyval) const
 
iterator find (const _Other &_Keyval)
 
const_iterator find (const _Other &_Keyval) const
 
size_type count (const key_type &_Keyval) const
 
size_type count (const _Other &_Keyval) const
 
iterator lower_bound (const key_type &_Keyval)
 
const_iterator lower_bound (const key_type &_Keyval) const
 
iterator lower_bound (const _Other &_Keyval)
 
const_iterator lower_bound (const _Other &_Keyval) const
 
iterator upper_bound (const key_type &_Keyval)
 
const_iterator upper_bound (const key_type &_Keyval) const
 
iterator upper_bound (const _Other &_Keyval)
 
const_iterator upper_bound (const _Other &_Keyval) const
 
_Pairii equal_range (const key_type &_Keyval)
 
_Paircc equal_range (const key_type &_Keyval) const
 
_Pairii equal_range (const _Other &_Keyval)
 
_Paircc equal_range (const _Other &_Keyval) const
 
void swap (_Myt &_Right)
 
- Public Member Functions inherited from _Tree_comp_alloc< _Tmap_traits< _Kty, _Ty, _Pr, _Alloc, true > >
 _Tree_comp_alloc (const key_compare &_Parg)
 
 _Tree_comp_alloc (const key_compare &_Parg, _Any_alloc &&_Al)
 
void _Construct ()
 
 ~_Tree_comp_alloc () _NOEXCEPT
 
void _Alloc_proxy ()
 
void _Free_proxy ()
 
void _Copy_alloc (const _Alty &_Al)
 
void _Move_alloc (_Alty &_Al)
 
void _Orphan_all ()
 
void _Swap_all (_Myt &_Right)
 
_Nodeptr _Buyheadnode ()
 
void _Freeheadnode (_Nodeptr _Pnode)
 
_Nodeptr _Buynode0 ()
 
void _Freenode0 (_Nodeptr _Pnode)
 
_Nodeptr _Buynode (_Valty &&..._Val)
 
key_compare_Getcomp () _NOEXCEPT
 
const key_compare_Getcomp () const _NOEXCEPT
 
_Alty_Getal () _NOEXCEPT
 
const _Alty_Getal () const _NOEXCEPT
 
_Tree_val< _Val_types > & _Get_data () _NOEXCEPT
 
const _Tree_val< _Val_types > & _Get_data () const _NOEXCEPT
 
_Nodeptr_Myhead () _NOEXCEPT
 
const _Nodeptr_Myhead () const _NOEXCEPT
 
size_type_Mysize () _NOEXCEPT
 
const size_type_Mysize () const _NOEXCEPT
 

Additional Inherited Members

- Static Public Member Functions inherited from _Tree_comp_alloc< _Tmap_traits< _Kty, _Ty, _Pr, _Alloc, true > >
static char_Color (_Nodeptr _Pnode)
 
static char_Isnil (_Nodeptr _Pnode)
 
static _Nodepref _Left (_Nodeptr _Pnode)
 
static _Nodepref _Parent (_Nodeptr _Pnode)
 
static _Nodepref _Right (_Nodeptr _Pnode)
 
static reference _Myval (_Nodeptr _Pnode)
 
static _Nodeptr _Max (_Nodeptr _Pnode)
 
static _Nodeptr _Min (_Nodeptr _Pnode)
 
- Protected Member Functions inherited from _Tree< _Tmap_traits< _Kty, _Ty, _Pr, _Alloc, true > >
_Nodeptr _Buynode_if_nil (_Nodeptr _Node, _Valty &&)
 
_Nodeptr _Buynode_if_nil (_Nil, _Valty &&_Val)
 
void _Destroy_if_not_nil (_Nodeptr _Newnode)
 
void _Destroy_if_not_nil (_Nil)
 
iterator _Insert_hint (const_iterator _Where, _Valty &&_Val, _Nodety _Newnode)
 
_Pairib _Insert_nohint (bool _Leftish, _Valty &&_Val, _Nodety _Newnode)
 
iterator _Insert_at (bool _Addleft, _Nodeptr _Wherenode, _Valty &&_Val, _Nodety _Node)
 
void _Copy (const _Myt &_Right, _Moveit _Movefl)
 
_Nodeptr _Copy_or_move (_Ty &_Val, _Copy_tag, _Is_set)
 
_Nodeptr _Copy_or_move (_Ty &_Val, _Move_tag, true_type)
 
_Nodeptr _Copy_or_move (_Ty &_Val, _Move_tag, false_type)
 
_Nodeptr _Copy_nodes (_Nodeptr _Rootnode, _Nodeptr _Wherenode, _Moveit _Movefl)
 
_Paircc _Eqrange (const _Other &_Keyval) const
 
_Pairii _Eqrange (const _Other &_Keyval)
 
void _Erase (_Nodeptr _Rootnode)
 
bool _Compare (const key_type &_Left, const key_type &_Right) const
 
bool _Compare (const _Ty1 &_Left, const _Ty2 &_Right) const
 
_Nodeptr _Lbound (const _Other &_Keyval) const
 
_Nodeptr_Lmost () const
 
void _Lrotate (_Nodeptr _Wherenode)
 
_Nodeptr_Rmost () const
 
_Nodeptr_Root () const
 
void _Rrotate (_Nodeptr _Wherenode)
 
_Nodeptr _Ubound (const _Other &_Keyval) const
 
void _Tidy ()
 
const key_type_Kfn (const value_type &_Val) const
 
const key_type_Key (_Nodeptr _Pnode) const
 

Member Typedef Documentation

template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Mybase::_Alty multimap< _Kty, _Ty, _Pr, _Alloc >::_Alty
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Tree<_Tmap_traits<_Kty, _Ty, _Pr, _Alloc, true> > multimap< _Kty, _Ty, _Pr, _Alloc >::_Mybase
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef multimap<_Kty, _Ty, _Pr, _Alloc> multimap< _Kty, _Ty, _Pr, _Alloc >::_Myt
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Mybase::allocator_type multimap< _Kty, _Ty, _Pr, _Alloc >::allocator_type
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Mybase::const_iterator multimap< _Kty, _Ty, _Pr, _Alloc >::const_iterator
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Mybase::const_pointer multimap< _Kty, _Ty, _Pr, _Alloc >::const_pointer
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Mybase::const_reference multimap< _Kty, _Ty, _Pr, _Alloc >::const_reference
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Mybase::const_reverse_iterator multimap< _Kty, _Ty, _Pr, _Alloc >::const_reverse_iterator
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Mybase::difference_type multimap< _Kty, _Ty, _Pr, _Alloc >::difference_type
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Mybase::iterator multimap< _Kty, _Ty, _Pr, _Alloc >::iterator
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Pr multimap< _Kty, _Ty, _Pr, _Alloc >::key_compare
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Kty multimap< _Kty, _Ty, _Pr, _Alloc >::key_type
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Ty multimap< _Kty, _Ty, _Pr, _Alloc >::mapped_type
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Mybase::pointer multimap< _Kty, _Ty, _Pr, _Alloc >::pointer
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Mybase::reference multimap< _Kty, _Ty, _Pr, _Alloc >::reference
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Mybase::reverse_iterator multimap< _Kty, _Ty, _Pr, _Alloc >::reverse_iterator
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Mybase::size_type multimap< _Kty, _Ty, _Pr, _Alloc >::size_type
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Mybase::value_compare multimap< _Kty, _Ty, _Pr, _Alloc >::value_compare
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Mybase::value_type multimap< _Kty, _Ty, _Pr, _Alloc >::value_type

Constructor & Destructor Documentation

template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
multimap< _Kty, _Ty, _Pr, _Alloc >::multimap ( )
inline
417  : _Mybase(key_compare())
418  { // construct empty map from defaults
419  }
_Tree< _Tmap_traits< _Kty, _Ty, _Pr, _Alloc, true > > _Mybase
Definition: map:395
_Pr key_compare
Definition: map:398
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
multimap< _Kty, _Ty, _Pr, _Alloc >::multimap ( const allocator_type _Al)
inlineexplicit
422  : _Mybase(key_compare(), _Al)
423  { // construct empty map from defaults, allocator
424  }
_Tree< _Tmap_traits< _Kty, _Ty, _Pr, _Alloc, true > > _Mybase
Definition: map:395
_Pr key_compare
Definition: map:398
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
multimap< _Kty, _Ty, _Pr, _Alloc >::multimap ( const _Myt _Right)
inline
427  : _Mybase(_Right,
428  _Right._Getal().select_on_container_copy_construction())
429  { // construct map by copying _Right
430  }
static _Nodepref _Right(_Nodeptr _Pnode)
Definition: xtree:674
_Tree< _Tmap_traits< _Kty, _Ty, _Pr, _Alloc, true > > _Mybase
Definition: map:395
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
multimap< _Kty, _Ty, _Pr, _Alloc >::multimap ( const _Myt _Right,
const allocator_type _Al 
)
inline
433  : _Mybase(_Right, _Al)
434  { // construct map by copying _Right, allocator
435  }
static _Nodepref _Right(_Nodeptr _Pnode)
Definition: xtree:674
_Tree< _Tmap_traits< _Kty, _Ty, _Pr, _Alloc, true > > _Mybase
Definition: map:395
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
multimap< _Kty, _Ty, _Pr, _Alloc >::multimap ( const key_compare _Pred)
inlineexplicit
438  : _Mybase(_Pred)
439  { // construct empty map from comparator
440  }
_FwdIt const _Ty _Pr _Pred
Definition: algorithm:1985
_Tree< _Tmap_traits< _Kty, _Ty, _Pr, _Alloc, true > > _Mybase
Definition: map:395
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
multimap< _Kty, _Ty, _Pr, _Alloc >::multimap ( const key_compare _Pred,
const allocator_type _Al 
)
inline
443  : _Mybase(_Pred, _Al)
444  { // construct empty map from comparator and allocator
445  }
_FwdIt const _Ty _Pr _Pred
Definition: algorithm:1985
_Tree< _Tmap_traits< _Kty, _Ty, _Pr, _Alloc, true > > _Mybase
Definition: map:395
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
template<class _Iter >
multimap< _Kty, _Ty, _Pr, _Alloc >::multimap ( _Iter  _First,
_Iter  _Last 
)
inline
449  : _Mybase(key_compare())
450  { // construct map from [_First, _Last), defaults
451  insert(_First, _Last);
452  }
_Tree< _Tmap_traits< _Kty, _Ty, _Pr, _Alloc, true > > _Mybase
Definition: map:395
_Pr key_compare
Definition: map:398
iterator insert(_Valty &&_Val)
Definition: map:519
_FwdIt _Last
Definition: algorithm:1936
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
template<class _Iter >
multimap< _Kty, _Ty, _Pr, _Alloc >::multimap ( _Iter  _First,
_Iter  _Last,
const key_compare _Pred 
)
inline
457  : _Mybase(_Pred)
458  { // construct map from [_First, _Last), comparator
459  insert(_First, _Last);
460  }
_FwdIt const _Ty _Pr _Pred
Definition: algorithm:1985
_Tree< _Tmap_traits< _Kty, _Ty, _Pr, _Alloc, true > > _Mybase
Definition: map:395
iterator insert(_Valty &&_Val)
Definition: map:519
_FwdIt _Last
Definition: algorithm:1936
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
template<class _Iter >
multimap< _Kty, _Ty, _Pr, _Alloc >::multimap ( _Iter  _First,
_Iter  _Last,
const allocator_type _Al 
)
inline
465  : _Mybase(key_compare(), _Al)
466  { // construct map from [_First, _Last), allocator
467  insert(_First, _Last);
468  }
_Tree< _Tmap_traits< _Kty, _Ty, _Pr, _Alloc, true > > _Mybase
Definition: map:395
_Pr key_compare
Definition: map:398
iterator insert(_Valty &&_Val)
Definition: map:519
_FwdIt _Last
Definition: algorithm:1936
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
template<class _Iter >
multimap< _Kty, _Ty, _Pr, _Alloc >::multimap ( _Iter  _First,
_Iter  _Last,
const key_compare _Pred,
const allocator_type _Al 
)
inline
473  : _Mybase(_Pred, _Al)
474  { // construct map from [_First, _Last), comparator, and allocator
475  insert(_First, _Last);
476  }
_FwdIt const _Ty _Pr _Pred
Definition: algorithm:1985
_Tree< _Tmap_traits< _Kty, _Ty, _Pr, _Alloc, true > > _Mybase
Definition: map:395
iterator insert(_Valty &&_Val)
Definition: map:519
_FwdIt _Last
Definition: algorithm:1936
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
multimap< _Kty, _Ty, _Pr, _Alloc >::multimap ( _Myt &&  _Right)
inline
485  : _Mybase(_STD move(_Right))
486  { // construct map by moving _Right
487  }
static _Nodepref _Right(_Nodeptr _Pnode)
Definition: xtree:674
_Tree< _Tmap_traits< _Kty, _Ty, _Pr, _Alloc, true > > _Mybase
Definition: map:395
constexpr remove_reference< _Ty >::type && move(_Ty &&_Arg) _NOEXCEPT
Definition: type_traits:1349
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
multimap< _Kty, _Ty, _Pr, _Alloc >::multimap ( _Myt &&  _Right,
const allocator_type _Al 
)
inline
490  : _Mybase(_STD move(_Right), _Al)
491  { // construct map by moving _Right
492  }
static _Nodepref _Right(_Nodeptr _Pnode)
Definition: xtree:674
_Tree< _Tmap_traits< _Kty, _Ty, _Pr, _Alloc, true > > _Mybase
Definition: map:395
constexpr remove_reference< _Ty >::type && move(_Ty &&_Arg) _NOEXCEPT
Definition: type_traits:1349
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
multimap< _Kty, _Ty, _Pr, _Alloc >::multimap ( initializer_list< value_type _Ilist)
inline
532  : _Mybase(key_compare())
533  { // construct from initializer_list, defaults
534  insert(_Ilist);
535  }
_Tree< _Tmap_traits< _Kty, _Ty, _Pr, _Alloc, true > > _Mybase
Definition: map:395
_Pr key_compare
Definition: map:398
iterator insert(_Valty &&_Val)
Definition: map:519
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
multimap< _Kty, _Ty, _Pr, _Alloc >::multimap ( initializer_list< value_type _Ilist,
const key_compare _Pred 
)
inline
539  : _Mybase(_Pred)
540  { // construct from initializer_list, comparator
541  insert(_Ilist);
542  }
_FwdIt const _Ty _Pr _Pred
Definition: algorithm:1985
_Tree< _Tmap_traits< _Kty, _Ty, _Pr, _Alloc, true > > _Mybase
Definition: map:395
iterator insert(_Valty &&_Val)
Definition: map:519
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
multimap< _Kty, _Ty, _Pr, _Alloc >::multimap ( initializer_list< value_type _Ilist,
const allocator_type _Al 
)
inline
546  : _Mybase(key_compare(), _Al)
547  { // construct from initializer_list, allocator
548  insert(_Ilist);
549  }
_Tree< _Tmap_traits< _Kty, _Ty, _Pr, _Alloc, true > > _Mybase
Definition: map:395
_Pr key_compare
Definition: map:398
iterator insert(_Valty &&_Val)
Definition: map:519
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
multimap< _Kty, _Ty, _Pr, _Alloc >::multimap ( initializer_list< value_type _Ilist,
const key_compare _Pred,
const allocator_type _Al 
)
inline
553  : _Mybase(_Pred, _Al)
554  { // construct from initializer_list, comparator, and allocator
555  insert(_Ilist);
556  }
_FwdIt const _Ty _Pr _Pred
Definition: algorithm:1985
_Tree< _Tmap_traits< _Kty, _Ty, _Pr, _Alloc, true > > _Mybase
Definition: map:395
iterator insert(_Valty &&_Val)
Definition: map:519

Member Function Documentation

template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
template<class... _Valty>
iterator multimap< _Kty, _Ty, _Pr, _Alloc >::emplace ( _Valty &&...  _Val)
inline
504  { // try to insert value_type(_Val...), favoring right side
505  return (_Mybase::emplace(_STD forward<_Valty>(_Val)...).first);
506  }
_Pairib emplace(_Valty &&..._Val)
Definition: xtree:1082
_FwdIt const _Ty _Val
Definition: algorithm:1938
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
template<class _Valty , class = enable_if_t<is_constructible<value_type, _Valty>::value>>
iterator multimap< _Kty, _Ty, _Pr, _Alloc >::insert ( _Valty &&  _Val)
inline
520  { // insert _Val
521  return (this->emplace(_STD forward<_Valty>(_Val)));
522  }
iterator emplace(_Valty &&..._Val)
Definition: map:503
_FwdIt const _Ty _Val
Definition: algorithm:1938
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
template<class _Valty , class = enable_if_t<is_constructible<value_type, _Valty>::value>>
iterator multimap< _Kty, _Ty, _Pr, _Alloc >::insert ( const_iterator  _Where,
_Valty &&  _Val 
)
inline
527  { // insert _Val with hint
528  return (this->emplace_hint(_Where, _STD forward<_Valty>(_Val)));
529  }
iterator emplace_hint(const_iterator _Where, _Valty &&..._Val)
Definition: xtree:1090
_FwdIt const _Ty _Val
Definition: algorithm:1938
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
_Myt& multimap< _Kty, _Ty, _Pr, _Alloc >::operator= ( const _Myt _Right)
inline
479  { // assign by copying _Right
481  return (*this);
482  }
static _Nodepref _Right(_Nodeptr _Pnode)
Definition: xtree:674
_Myt & operator=(_Myt &&_Right)
Definition: xtree:1052
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
_Myt& multimap< _Kty, _Ty, _Pr, _Alloc >::operator= ( _Myt &&  _Right)
inline
497  { // assign by moving _Right
499  return (*this);
500  }
static _Nodepref _Right(_Nodeptr _Pnode)
Definition: xtree:674
constexpr remove_reference< _Ty >::type && move(_Ty &&_Arg) _NOEXCEPT
Definition: type_traits:1349
_Myt & operator=(_Myt &&_Right)
Definition: xtree:1052
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
_Myt& multimap< _Kty, _Ty, _Pr, _Alloc >::operator= ( initializer_list< value_type _Ilist)
inline
559  { // assign initializer_list
560  _Mybase::clear();
561  insert(_Ilist);
562  return (*this);
563  }
void clear() _NOEXCEPT
Definition: xtree:1474
iterator insert(_Valty &&_Val)
Definition: map:519
template<class _Kty, class _Ty, class _Pr = less<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
void multimap< _Kty, _Ty, _Pr, _Alloc >::swap ( _Myt _Right)
inline
511  { // exchange contents with non-movable _Right
513  }
static _Nodepref _Right(_Nodeptr _Pnode)
Definition: xtree:674
void swap(_Myt &_Right)
Definition: xtree:1622

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