![]() |
The Gaudi Framework
v30r3 (a5ef0a68)
|
Common class providing an architecture-independent hash map. More...
#include <GaudiKernel/HashMap.h>
Public Types | |
typedef H | hasher |
![]() | |
typedef M | map_type |
typedef K | key_type |
typedef T | mapped_type |
typedef K | argument_type |
typedef T | result_type |
typedef std::pair< const K, T > | value_type |
typedef const value_type & | const_reference |
typedef map_type::size_type | size_type |
typedef map_type::iterator | iterator |
typedef map_type::const_iterator | const_iterator |
Public Member Functions | |||
hasher | hash_funct () const | ||
![]() | |||
Map ()=default | |||
Standard constructor. More... | |||
Map (const map_type &other) | |||
Constructor from a standard map. More... | |||
template<typename In > | |||
Map (In &&first, In &&last) | |||
Construct from a subset. More... | |||
virtual | ~Map ()=default | ||
Virtual destructor. You can inherit from this map type. More... | |||
iterator | begin () | ||
iterator | end () | ||
const_iterator | begin () const | ||
const_iterator | end () const | ||
mapped_type & | operator[] (const key_type &key) | ||
iterator | find (const key_type &key) | ||
const_iterator | find (const key_type &key) const | ||
size_type | count (const key_type &key) const | ||
iterator | lower_bound (const key_type &key) | ||
const_iterator | lower_bound (const key_type &key) const | ||
iterator | upper_bound (const key_type &key) | ||
const_iterator | upper_bound (const key_type &key) const | ||
std::pair< iterator, iterator > | equal_range (const key_type &key) | ||
std::pair< const_iterator, const_iterator > | equal_range (const key_type &key) const | ||
template<class... Args> | |||
std::pair< iterator, bool > | emplace (Args &&...args) | ||
template<typename ValueType > | |||
std::pair< iterator, bool > | insert (ValueType &&val) | ||
std::pair< iterator, bool > | insert (value_type &&val) | ||
template<typename In > | |||
void | insert (In &&first, In &&last) | ||
template<typename ValueType > | |||
iterator | insert (iterator, ValueType &&val) | ||
iterator | erase (const_iterator pos) | ||
size_type | erase (const key_type &key) | ||
iterator | erase (const_iterator first, const_iterator last) | ||
void | clear () | ||
size_type | size () const | ||
size_type | max_size () const | ||
bool | empty () const | ||
void | swap (map_type &other) | ||
const result_type & | operator() (const argument_type &key) const | ||
Allow to use Map as an unary function. More... | |||
const mapped_type & | operator[] (const key_type &key) const | ||
Access elements of a const Map. More... | |||
const result_type & | at (const argument_type &key) const | ||
checked access to the map
| |||
Map & | merge (const map_type &other) | ||
Merge two maps. More... | |||
Map & | merge (const Map &other) | ||
Merge two maps. More... | |||
template<class K1 , class K2 , class K3 > | |||
Map & | merge (const Map< K1, K2, K3 > &other) | ||
Merge two maps. More... | |||
void | update (const key_type &key, const mapped_type &mapped) | ||
operator map_type & () | |||
Allows to use the Map wherever an std::map is explicitly requested. More... | |||
operator const map_type & () const | |||
const key_type & | key_at (const size_type index) const | ||
useful method for python decoration: More... | |||
const mapped_type & | value_at (const size_type index) const | ||
useful method for python decoration: More... | |||
![]() | |||
virtual | ~MapBase () | ||
virtual destructor More... | |||
Additional Inherited Members | |
![]() | |
void | throw_out_of_range_exception () const |
throw std::out_of_range exception More... | |
![]() | |
map_type | m_map |
![]() | |
static const result_type | s_null_value = typename Map<K, T, M>::result_type() |
Common class providing an architecture-independent hash map.
Due to helper base class Gaudi::Utils::MapBase, this class is "python-friendly", and one can perform all python manipulaitons in intuitive way:
__setitem__
and __getitem__
methods in python: In a similar way __delitem__
methods can be redefined.
typedef H GaudiUtils::HashMap< K, T, H, M >::hasher |
|
inline |