momo  3.12
momo::stdish::multimap_adaptor< TTreeMap > Class Template Reference

#include <map.h>

Inheritance diagram for momo::stdish::multimap_adaptor< TTreeMap >:
momo::stdish::internal::map_adaptor_base< TTreeMap >

Public Types

typedef iterator insert_return_type
 
typedef TreeMap::Key key_type
 
typedef TreeMap::Value mapped_type
 
typedef std::pair< const key_type, mapped_typevalue_type
 
typedef momo::internal::TreeDerivedIterator< TreeMapIterator, momo::internal::MapReferenceStditerator
 
typedef iterator::ConstIterator const_iterator
 
typedef internal::map_node_handle< typename TreeMap::ExtractedPairnode_type
 
- Public Types inherited from momo::stdish::internal::map_adaptor_base< TTreeMap >
typedef TreeMap::Key key_type
 
typedef TreeMap::Value mapped_type
 
typedef TreeTraits::LessComparer key_compare
 
typedef TreeMap nested_container_type
 
typedef size_t size_type
 
typedef ptrdiff_t difference_type
 
typedef std::pair< const key_type, mapped_typevalue_type
 
typedef std::allocator_traits< typename MemManager::ByteAllocator >::template rebind_alloc< value_typeallocator_type
 
typedef map_value_compare< key_type, key_comparevalue_compare
 
typedef momo::internal::TreeDerivedIterator< TreeMapIterator, momo::internal::MapReferenceStditerator
 
typedef iterator::ConstIterator const_iterator
 
typedef iterator::Reference reference
 
typedef const_iterator::Reference const_reference
 
typedef iterator::Pointer pointer
 
typedef const_iterator::Pointer const_pointer
 
typedef std::reverse_iterator< iteratorreverse_iterator
 
typedef std::reverse_iterator< const_iteratorconst_reverse_iterator
 
typedef internal::map_node_handle< typename TreeMap::ExtractedPairnode_type
 
typedef internal::insert_return_type< iterator, node_typeinsert_return_type
 

Public Member Functions

multimap_adaptoroperator= (std::initializer_list< value_type > values)
 
template<typename ValueArg = std::pair<key_type, mapped_type>>
momo::internal::EnableIf< std::is_constructible< value_type, ValueArg && >::value, iteratorinsert (ValueArg &&valueArg)
 
template<typename ValueArg = std::pair<key_type, mapped_type>>
momo::internal::EnableIf< std::is_constructible< value_type, ValueArg && >::value, iteratorinsert (const_iterator hint, ValueArg &&valueArg)
 
iterator insert (node_type &&node)
 
iterator insert (const_iterator hint, node_type &&node)
 
template<typename Iterator >
void insert (Iterator first, Iterator last)
 
void insert (std::initializer_list< value_type > values)
 
template<typename... ValueArgs>
iterator emplace (ValueArgs &&... valueArgs)
 
- Public Member Functions inherited from momo::stdish::internal::map_adaptor_base< TTreeMap >
 map_adaptor_base ()
 
 map_adaptor_base (const allocator_type &alloc)
 
 map_adaptor_base (const key_compare &lessComp, const allocator_type &alloc=allocator_type())
 
template<typename Iterator >
 map_adaptor_base (Iterator first, Iterator last, const allocator_type &alloc=allocator_type())
 
template<typename Iterator >
 map_adaptor_base (Iterator first, Iterator last, const key_compare &lessComp, const allocator_type &alloc=allocator_type())
 
 map_adaptor_base (std::initializer_list< value_type > values, const allocator_type &alloc=allocator_type())
 
 map_adaptor_base (std::initializer_list< value_type > values, const key_compare &lessComp, const allocator_type &alloc=allocator_type())
 
 map_adaptor_base (map_adaptor_base &&right)
 
 map_adaptor_base (map_adaptor_base &&right, const allocator_type &alloc)
 
 map_adaptor_base (const map_adaptor_base &right)
 
 map_adaptor_base (const map_adaptor_base &right, const allocator_type &alloc)
 
 ~map_adaptor_base ()=default
 
map_adaptor_baseoperator= (map_adaptor_base &&right) noexcept(momo::internal::ContainerAssignerStd::IsNothrowMoveAssignable< map_adaptor_base >::value)
 
map_adaptor_baseoperator= (const map_adaptor_base &right)
 
void swap (map_adaptor_base &right) noexcept
 
const nested_container_typeget_nested_container () const noexcept
 
nested_container_typeget_nested_container () noexcept
 
const_iterator begin () const noexcept
 
iterator begin () noexcept
 
const_iterator end () const noexcept
 
iterator end () noexcept
 
const_reverse_iterator rbegin () const noexcept
 
reverse_iterator rbegin () noexcept
 
const_reverse_iterator rend () const noexcept
 
reverse_iterator rend () noexcept
 
const_iterator cbegin () const noexcept
 
const_iterator cend () const noexcept
 
const_reverse_iterator crbegin () const noexcept
 
const_reverse_iterator crend () const noexcept
 
key_compare key_comp () const
 
value_compare value_comp () const
 
allocator_type get_allocator () const noexcept
 
size_type max_size () const noexcept
 
size_type size () const noexcept
 
MOMO_NODISCARD bool empty () const noexcept
 
void clear () noexcept
 
const_iterator find (const key_type &key) const
 
iterator find (const key_type &key)
 
template<typename KeyArg >
momo::internal::EnableIf< IsValidKeyArg< KeyArg >::value, const_iteratorfind (const KeyArg &key) const
 
template<typename KeyArg >
momo::internal::EnableIf< IsValidKeyArg< KeyArg >::value, iteratorfind (const KeyArg &key)
 
size_type count (const key_type &key) const
 
template<typename KeyArg >
momo::internal::EnableIf< IsValidKeyArg< KeyArg >::value, size_typecount (const KeyArg &key) const
 
bool contains (const key_type &key) const
 
template<typename KeyArg >
momo::internal::EnableIf< IsValidKeyArg< KeyArg >::value, bool > contains (const KeyArg &key) const
 
const_iterator lower_bound (const key_type &key) const
 
iterator lower_bound (const key_type &key)
 
template<typename KeyArg >
momo::internal::EnableIf< IsValidKeyArg< KeyArg >::value, const_iteratorlower_bound (const KeyArg &key) const
 
template<typename KeyArg >
momo::internal::EnableIf< IsValidKeyArg< KeyArg >::value, iteratorlower_bound (const KeyArg &key)
 
const_iterator upper_bound (const key_type &key) const
 
iterator upper_bound (const key_type &key)
 
template<typename KeyArg >
momo::internal::EnableIf< IsValidKeyArg< KeyArg >::value, const_iteratorupper_bound (const KeyArg &key) const
 
template<typename KeyArg >
momo::internal::EnableIf< IsValidKeyArg< KeyArg >::value, iteratorupper_bound (const KeyArg &key)
 
std::pair< const_iterator, const_iteratorequal_range (const key_type &key) const
 
std::pair< iterator, iteratorequal_range (const key_type &key)
 
template<typename KeyArg >
momo::internal::EnableIf< IsValidKeyArg< KeyArg >::value, std::pair< const_iterator, const_iterator > > equal_range (const KeyArg &key) const
 
template<typename KeyArg >
momo::internal::EnableIf< IsValidKeyArg< KeyArg >::value, std::pair< iterator, iterator > > equal_range (const KeyArg &key)
 
template<typename ValueArg = std::pair<key_type, mapped_type>>
momo::internal::EnableIf< std::is_constructible< value_type, ValueArg && >::value, std::pair< iterator, bool > > insert (ValueArg &&valueArg)
 
template<typename ValueArg = std::pair<key_type, mapped_type>>
momo::internal::EnableIf< std::is_constructible< value_type, ValueArg && >::value, iteratorinsert (const_iterator hint, ValueArg &&valueArg)
 
insert_return_type insert (node_type &&node)
 
iterator insert (const_iterator hint, node_type &&node)
 
template<typename Iterator >
void insert (Iterator first, Iterator last)
 
void insert (std::initializer_list< value_type > values)
 
std::pair< iterator, bool > emplace ()
 
iterator emplace_hint (const_iterator hint)
 
template<typename ValueArg >
std::pair< iterator, bool > emplace (ValueArg &&valueArg)
 
template<typename ValueArg >
iterator emplace_hint (const_iterator hint, ValueArg &&valueArg)
 
template<typename KeyArg , typename MappedArg >
std::pair< iterator, bool > emplace (KeyArg &&keyArg, MappedArg &&mappedArg)
 
template<typename KeyArg , typename MappedArg >
iterator emplace_hint (const_iterator hint, KeyArg &&keyArg, MappedArg &&mappedArg)
 
template<typename... KeyArgs, typename... MappedArgs>
std::pair< iterator, bool > emplace (std::piecewise_construct_t, std::tuple< KeyArgs... > keyArgs, std::tuple< MappedArgs... > mappedArgs)
 
template<typename... KeyArgs, typename... MappedArgs>
iterator emplace_hint (const_iterator hint, std::piecewise_construct_t, std::tuple< KeyArgs... > keyArgs, std::tuple< MappedArgs... > mappedArgs)
 
iterator erase (const_iterator where)
 
iterator erase (iterator where)
 
iterator erase (const_iterator first, const_iterator last)
 
size_type erase (const key_type &key)
 
node_type extract (const_iterator where)
 
node_type extract (const key_type &key)
 
template<typename Map >
void merge (Map &&map)
 

Friends

void swap (multimap_adaptor &left, multimap_adaptor &right) noexcept
 

Additional Inherited Members

- Protected Member Functions inherited from momo::stdish::internal::map_adaptor_base< TTreeMap >
void ptAssign (std::initializer_list< value_type > values)
 
template<typename Hint , typename... KeyArgs, typename... MappedArgs>
std::pair< iterator, bool > ptEmplace (Hint hint, std::tuple< KeyArgs... > &&keyArgs, std::tuple< MappedArgs... > &&mappedArgs)
 

Member Typedef Documentation

◆ const_iterator

template<typename TTreeMap >
typedef iterator::ConstIterator momo::stdish::internal::map_adaptor_base< TTreeMap >::const_iterator

◆ insert_return_type

template<typename TTreeMap >
typedef iterator momo::stdish::multimap_adaptor< TTreeMap >::insert_return_type

◆ iterator

◆ key_type

template<typename TTreeMap >
typedef TreeMap::Key momo::stdish::internal::map_adaptor_base< TTreeMap >::key_type

◆ mapped_type

template<typename TTreeMap >
typedef TreeMap::Value momo::stdish::internal::map_adaptor_base< TTreeMap >::mapped_type

◆ node_type

template<typename TTreeMap >
typedef internal::map_node_handle<typename TreeMap::ExtractedPair> momo::stdish::internal::map_adaptor_base< TTreeMap >::node_type

◆ value_type

template<typename TTreeMap >
typedef std::pair<const key_type, mapped_type> momo::stdish::internal::map_adaptor_base< TTreeMap >::value_type

Member Function Documentation

◆ emplace()

template<typename TTreeMap >
template<typename... ValueArgs>
iterator momo::stdish::multimap_adaptor< TTreeMap >::emplace ( ValueArgs &&...  valueArgs)
inline

◆ insert() [1/6]

template<typename TTreeMap >
iterator momo::stdish::multimap_adaptor< TTreeMap >::insert ( const_iterator  hint,
node_type &&  node 
)
inline

◆ insert() [2/6]

template<typename TTreeMap >
template<typename ValueArg = std::pair<key_type, mapped_type>>
momo::internal::EnableIf<std::is_constructible<value_type, ValueArg&&>::value, iterator> momo::stdish::multimap_adaptor< TTreeMap >::insert ( const_iterator  hint,
ValueArg &&  valueArg 
)
inline

◆ insert() [3/6]

template<typename TTreeMap >
template<typename Iterator >
void momo::stdish::multimap_adaptor< TTreeMap >::insert ( Iterator  first,
Iterator  last 
)
inline

◆ insert() [4/6]

template<typename TTreeMap >
iterator momo::stdish::multimap_adaptor< TTreeMap >::insert ( node_type &&  node)
inline

◆ insert() [5/6]

template<typename TTreeMap >
void momo::stdish::multimap_adaptor< TTreeMap >::insert ( std::initializer_list< value_type values)
inline

◆ insert() [6/6]

template<typename TTreeMap >
template<typename ValueArg = std::pair<key_type, mapped_type>>
momo::internal::EnableIf<std::is_constructible<value_type, ValueArg&&>::value, iterator> momo::stdish::multimap_adaptor< TTreeMap >::insert ( ValueArg &&  valueArg)
inline

◆ operator=()

template<typename TTreeMap >
multimap_adaptor& momo::stdish::multimap_adaptor< TTreeMap >::operator= ( std::initializer_list< value_type values)
inline

Friends And Related Function Documentation

◆ swap

template<typename TTreeMap >
void swap ( multimap_adaptor< TTreeMap > &  left,
multimap_adaptor< TTreeMap > &  right 
)
friend

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