blocxx
BLOCXX_NAMESPACE::Map< Key, T, Compare > Class Template Reference

#include <Map.hpp>

Public Types

typedef M::key_type key_type
 
typedef M::mapped_type mapped_type
 
typedef M::value_type value_type
 
typedef M::key_compare key_compare
 
typedef M::value_compare value_compare
 
typedef M::pointer pointer
 
typedef M::const_pointer const_pointer
 
typedef M::reference reference
 
typedef M::const_reference const_reference
 
typedef M::iterator iterator
 
typedef M::const_iterator const_iterator
 
typedef M::reverse_iterator reverse_iterator
 
typedef M::const_reverse_iterator const_reverse_iterator
 
typedef M::size_type size_type
 
typedef M::difference_type difference_type
 

Public Member Functions

 Map ()
 
 Map (M *toWrap)
 
 Map (const Compare &comp)
 
template<class InputIterator>
 Map (InputIterator first, InputIterator last)
 
template<class InputIterator>
 Map (InputIterator first, InputIterator last, const Compare &comp)
 
MgetImpl ()
 
key_compare key_comp () const
 
value_compare value_comp () const
 
iterator begin ()
 
const_iterator begin () const
 
iterator end ()
 
const_iterator end () const
 
reverse_iterator rbegin ()
 
const_reverse_iterator rbegin () const
 
reverse_iterator rend ()
 
const_reverse_iterator rend () const
 
bool empty () const
 
size_type size () const
 
size_type max_size () const
 
T & operator[] (const key_type &k)
 
void swap (Map< Key, T, Compare > &x)
 
std::pair< iterator, bool > insert (const value_type &x)
 
iterator insert (iterator position, const value_type &x)
 
template<class InputIterator>
void insert (InputIterator first, InputIterator last)
 
void erase (iterator position)
 
size_type erase (const key_type &x)
 
void erase (iterator first, iterator last)
 
void clear ()
 
iterator find (const key_type &x)
 
const_iterator find (const key_type &x) const
 
size_type count (const key_type &x) const
 
iterator lower_bound (const key_type &x)
 
const_iterator lower_bound (const key_type &x) const
 
iterator upper_bound (const key_type &x)
 
const_iterator upper_bound (const key_type &x) const
 
std::pair< iterator, iteratorequal_range (const key_type &x)
 
std::pair< const_iterator, const_iteratorequal_range (const key_type &x) const
 

Private Types

typedef std::map< Key, T, Compare > M
 

Private Attributes

COWReference< Mm_impl
 

Friends

bool operator== (const Map< Key, T, Compare > &x, const Map< Key, T, Compare > &y)
 
bool operator< (const Map< Key, T, Compare > &x, const Map< Key, T, Compare > &y)
 

Detailed Description

template<class Key, class T, class Compare = std::less<Key>>
class BLOCXX_NAMESPACE::Map< Key, T, Compare >

Definition at line 63 of file Map.hpp.

Member Typedef Documentation

◆ const_iterator

template<class Key, class T, class Compare = std::less<Key>>
typedef M::const_iterator BLOCXX_NAMESPACE::Map< Key, T, Compare >::const_iterator

Definition at line 78 of file Map.hpp.

◆ const_pointer

template<class Key, class T, class Compare = std::less<Key>>
typedef M::const_pointer BLOCXX_NAMESPACE::Map< Key, T, Compare >::const_pointer

Definition at line 74 of file Map.hpp.

◆ const_reference

template<class Key, class T, class Compare = std::less<Key>>
typedef M::const_reference BLOCXX_NAMESPACE::Map< Key, T, Compare >::const_reference

Definition at line 76 of file Map.hpp.

◆ const_reverse_iterator

template<class Key, class T, class Compare = std::less<Key>>
typedef M::const_reverse_iterator BLOCXX_NAMESPACE::Map< Key, T, Compare >::const_reverse_iterator

Definition at line 80 of file Map.hpp.

◆ difference_type

template<class Key, class T, class Compare = std::less<Key>>
typedef M::difference_type BLOCXX_NAMESPACE::Map< Key, T, Compare >::difference_type

Definition at line 82 of file Map.hpp.

◆ iterator

template<class Key, class T, class Compare = std::less<Key>>
typedef M::iterator BLOCXX_NAMESPACE::Map< Key, T, Compare >::iterator

Definition at line 77 of file Map.hpp.

◆ key_compare

template<class Key, class T, class Compare = std::less<Key>>
typedef M::key_compare BLOCXX_NAMESPACE::Map< Key, T, Compare >::key_compare

Definition at line 71 of file Map.hpp.

◆ key_type

template<class Key, class T, class Compare = std::less<Key>>
typedef M::key_type BLOCXX_NAMESPACE::Map< Key, T, Compare >::key_type

Definition at line 68 of file Map.hpp.

◆ M

template<class Key, class T, class Compare = std::less<Key>>
typedef std::map<Key, T, Compare > BLOCXX_NAMESPACE::Map< Key, T, Compare >::M
private

Definition at line 65 of file Map.hpp.

◆ mapped_type

template<class Key, class T, class Compare = std::less<Key>>
typedef M::mapped_type BLOCXX_NAMESPACE::Map< Key, T, Compare >::mapped_type

Definition at line 69 of file Map.hpp.

◆ pointer

template<class Key, class T, class Compare = std::less<Key>>
typedef M::pointer BLOCXX_NAMESPACE::Map< Key, T, Compare >::pointer

Definition at line 73 of file Map.hpp.

◆ reference

template<class Key, class T, class Compare = std::less<Key>>
typedef M::reference BLOCXX_NAMESPACE::Map< Key, T, Compare >::reference

Definition at line 75 of file Map.hpp.

◆ reverse_iterator

template<class Key, class T, class Compare = std::less<Key>>
typedef M::reverse_iterator BLOCXX_NAMESPACE::Map< Key, T, Compare >::reverse_iterator

Definition at line 79 of file Map.hpp.

◆ size_type

template<class Key, class T, class Compare = std::less<Key>>
typedef M::size_type BLOCXX_NAMESPACE::Map< Key, T, Compare >::size_type

Definition at line 81 of file Map.hpp.

◆ value_compare

template<class Key, class T, class Compare = std::less<Key>>
typedef M::value_compare BLOCXX_NAMESPACE::Map< Key, T, Compare >::value_compare

Definition at line 72 of file Map.hpp.

◆ value_type

template<class Key, class T, class Compare = std::less<Key>>
typedef M::value_type BLOCXX_NAMESPACE::Map< Key, T, Compare >::value_type

Definition at line 70 of file Map.hpp.

Constructor & Destructor Documentation

◆ Map() [1/5]

template<class Key, class T, class Compare = std::less<Key>>
BLOCXX_NAMESPACE::Map< Key, T, Compare >::Map ( )
inline

Definition at line 83 of file Map.hpp.

Referenced by operator<, and operator==.

◆ Map() [2/5]

template<class Key, class T, class Compare = std::less<Key>>
BLOCXX_NAMESPACE::Map< Key, T, Compare >::Map ( M * toWrap)
inlineexplicit

Definition at line 84 of file Map.hpp.

◆ Map() [3/5]

template<class Key, class T, class Compare = std::less<Key>>
BLOCXX_NAMESPACE::Map< Key, T, Compare >::Map ( const Compare & comp)
inlineexplicit

Definition at line 86 of file Map.hpp.

◆ Map() [4/5]

template<class Key, class T, class Compare = std::less<Key>>
template<class InputIterator>
BLOCXX_NAMESPACE::Map< Key, T, Compare >::Map ( InputIterator first,
InputIterator last )
inline

Definition at line 89 of file Map.hpp.

◆ Map() [5/5]

template<class Key, class T, class Compare = std::less<Key>>
template<class InputIterator>
BLOCXX_NAMESPACE::Map< Key, T, Compare >::Map ( InputIterator first,
InputIterator last,
const Compare & comp )
inline

Definition at line 94 of file Map.hpp.

Member Function Documentation

◆ begin() [1/2]

template<class Key, class T, class Compare = std::less<Key>>
iterator BLOCXX_NAMESPACE::Map< Key, T, Compare >::begin ( )
inline

Definition at line 110 of file Map.hpp.

◆ begin() [2/2]

template<class Key, class T, class Compare = std::less<Key>>
const_iterator BLOCXX_NAMESPACE::Map< Key, T, Compare >::begin ( ) const
inline

Definition at line 114 of file Map.hpp.

◆ clear()

template<class Key, class T, class Compare = std::less<Key>>
void BLOCXX_NAMESPACE::Map< Key, T, Compare >::clear ( )
inline

Definition at line 187 of file Map.hpp.

Referenced by BLOCXX_NAMESPACE::EnvVars::fillEnvMap().

◆ count()

template<class Key, class T, class Compare = std::less<Key>>
size_type BLOCXX_NAMESPACE::Map< Key, T, Compare >::count ( const key_type & x) const
inline

Definition at line 199 of file Map.hpp.

◆ empty()

template<class Key, class T, class Compare = std::less<Key>>
bool BLOCXX_NAMESPACE::Map< Key, T, Compare >::empty ( ) const
inline

Definition at line 142 of file Map.hpp.

◆ end() [1/2]

template<class Key, class T, class Compare = std::less<Key>>
iterator BLOCXX_NAMESPACE::Map< Key, T, Compare >::end ( )
inline

Definition at line 118 of file Map.hpp.

◆ end() [2/2]

template<class Key, class T, class Compare = std::less<Key>>
const_iterator BLOCXX_NAMESPACE::Map< Key, T, Compare >::end ( ) const
inline

Definition at line 122 of file Map.hpp.

◆ equal_range() [1/2]

template<class Key, class T, class Compare = std::less<Key>>
std::pair< iterator, iterator > BLOCXX_NAMESPACE::Map< Key, T, Compare >::equal_range ( const key_type & x)
inline

Definition at line 219 of file Map.hpp.

◆ equal_range() [2/2]

template<class Key, class T, class Compare = std::less<Key>>
std::pair< const_iterator, const_iterator > BLOCXX_NAMESPACE::Map< Key, T, Compare >::equal_range ( const key_type & x) const
inline

Definition at line 224 of file Map.hpp.

◆ erase() [1/3]

template<class Key, class T, class Compare = std::less<Key>>
size_type BLOCXX_NAMESPACE::Map< Key, T, Compare >::erase ( const key_type & x)
inline

Definition at line 179 of file Map.hpp.

◆ erase() [2/3]

template<class Key, class T, class Compare = std::less<Key>>
void BLOCXX_NAMESPACE::Map< Key, T, Compare >::erase ( iterator first,
iterator last )
inline

Definition at line 183 of file Map.hpp.

◆ erase() [3/3]

template<class Key, class T, class Compare = std::less<Key>>
void BLOCXX_NAMESPACE::Map< Key, T, Compare >::erase ( iterator position)
inline

Definition at line 175 of file Map.hpp.

◆ find() [1/2]

template<class Key, class T, class Compare = std::less<Key>>
iterator BLOCXX_NAMESPACE::Map< Key, T, Compare >::find ( const key_type & x)
inline

Definition at line 191 of file Map.hpp.

◆ find() [2/2]

template<class Key, class T, class Compare = std::less<Key>>
const_iterator BLOCXX_NAMESPACE::Map< Key, T, Compare >::find ( const key_type & x) const
inline

Definition at line 195 of file Map.hpp.

◆ getImpl()

template<class Key, class T, class Compare = std::less<Key>>
M * BLOCXX_NAMESPACE::Map< Key, T, Compare >::getImpl ( )
inline

Definition at line 98 of file Map.hpp.

◆ insert() [1/3]

template<class Key, class T, class Compare = std::less<Key>>
std::pair< iterator, bool > BLOCXX_NAMESPACE::Map< Key, T, Compare >::insert ( const value_type & x)
inline

Definition at line 162 of file Map.hpp.

◆ insert() [2/3]

template<class Key, class T, class Compare = std::less<Key>>
template<class InputIterator>
void BLOCXX_NAMESPACE::Map< Key, T, Compare >::insert ( InputIterator first,
InputIterator last )
inline

Definition at line 171 of file Map.hpp.

◆ insert() [3/3]

template<class Key, class T, class Compare = std::less<Key>>
iterator BLOCXX_NAMESPACE::Map< Key, T, Compare >::insert ( iterator position,
const value_type & x )
inline

Definition at line 166 of file Map.hpp.

◆ key_comp()

template<class Key, class T, class Compare = std::less<Key>>
key_compare BLOCXX_NAMESPACE::Map< Key, T, Compare >::key_comp ( ) const
inline

Definition at line 102 of file Map.hpp.

◆ lower_bound() [1/2]

template<class Key, class T, class Compare = std::less<Key>>
iterator BLOCXX_NAMESPACE::Map< Key, T, Compare >::lower_bound ( const key_type & x)
inline

Definition at line 203 of file Map.hpp.

◆ lower_bound() [2/2]

template<class Key, class T, class Compare = std::less<Key>>
const_iterator BLOCXX_NAMESPACE::Map< Key, T, Compare >::lower_bound ( const key_type & x) const
inline

Definition at line 207 of file Map.hpp.

◆ max_size()

template<class Key, class T, class Compare = std::less<Key>>
size_type BLOCXX_NAMESPACE::Map< Key, T, Compare >::max_size ( ) const
inline

Definition at line 150 of file Map.hpp.

◆ operator[]()

template<class Key, class T, class Compare = std::less<Key>>
T & BLOCXX_NAMESPACE::Map< Key, T, Compare >::operator[] ( const key_type & k)
inline

Definition at line 154 of file Map.hpp.

◆ rbegin() [1/2]

template<class Key, class T, class Compare = std::less<Key>>
reverse_iterator BLOCXX_NAMESPACE::Map< Key, T, Compare >::rbegin ( )
inline

Definition at line 126 of file Map.hpp.

◆ rbegin() [2/2]

template<class Key, class T, class Compare = std::less<Key>>
const_reverse_iterator BLOCXX_NAMESPACE::Map< Key, T, Compare >::rbegin ( ) const
inline

Definition at line 130 of file Map.hpp.

◆ rend() [1/2]

template<class Key, class T, class Compare = std::less<Key>>
reverse_iterator BLOCXX_NAMESPACE::Map< Key, T, Compare >::rend ( )
inline

Definition at line 134 of file Map.hpp.

◆ rend() [2/2]

template<class Key, class T, class Compare = std::less<Key>>
const_reverse_iterator BLOCXX_NAMESPACE::Map< Key, T, Compare >::rend ( ) const
inline

Definition at line 138 of file Map.hpp.

◆ size()

template<class Key, class T, class Compare = std::less<Key>>
size_type BLOCXX_NAMESPACE::Map< Key, T, Compare >::size ( ) const
inline

Definition at line 146 of file Map.hpp.

◆ swap()

template<class Key, class T, class Compare = std::less<Key>>
void BLOCXX_NAMESPACE::Map< Key, T, Compare >::swap ( Map< Key, T, Compare > & x)
inline

Definition at line 158 of file Map.hpp.

Referenced by BLOCXX_NAMESPACE::swap().

◆ upper_bound() [1/2]

template<class Key, class T, class Compare = std::less<Key>>
iterator BLOCXX_NAMESPACE::Map< Key, T, Compare >::upper_bound ( const key_type & x)
inline

Definition at line 211 of file Map.hpp.

◆ upper_bound() [2/2]

template<class Key, class T, class Compare = std::less<Key>>
const_iterator BLOCXX_NAMESPACE::Map< Key, T, Compare >::upper_bound ( const key_type & x) const
inline

Definition at line 215 of file Map.hpp.

◆ value_comp()

template<class Key, class T, class Compare = std::less<Key>>
value_compare BLOCXX_NAMESPACE::Map< Key, T, Compare >::value_comp ( ) const
inline

Definition at line 106 of file Map.hpp.

Friends And Related Symbol Documentation

◆ operator<

template<class Key, class T, class Compare = std::less<Key>>
bool operator< ( const Map< Key, T, Compare > & x,
const Map< Key, T, Compare > & y )
friend

Definition at line 245 of file Map.hpp.

References m_impl, and Map().

◆ operator==

template<class Key, class T, class Compare = std::less<Key>>
bool operator== ( const Map< Key, T, Compare > & x,
const Map< Key, T, Compare > & y )
friend

Definition at line 239 of file Map.hpp.

References m_impl, and Map().

Member Data Documentation

◆ m_impl

template<class Key, class T, class Compare = std::less<Key>>
COWReference<M> BLOCXX_NAMESPACE::Map< Key, T, Compare >::m_impl
private

Definition at line 66 of file Map.hpp.

Referenced by operator<, operator==, and BLOCXX_NAMESPACE::Map< String, String >::swap().


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