DeSiGNAR  0.5a
Data Structures General Library
Public Member Functions | List of all members
Designar::HashMap< Key, Value, Cmp, HashTableType > Class Template Reference

#include <map.H>

Inheritance diagram for Designar::HashMap< Key, Value, Cmp, HashTableType >:
Inheritance graph
[legend]
Collaboration diagram for Designar::HashMap< Key, Value, Cmp, HashTableType >:
Collaboration graph
[legend]

Public Member Functions

 HashMap (nat_t size, Cmp &_cmp, HashFctPtr _fct)
 
 HashMap (nat_t size, Cmp &&_cmp=Cmp(), HashFctPtr fct=&super_fast_hash)
 
 HashMap (Cmp &_cmp, HashFctPtr _fct)
 
 HashMap (Cmp &&_cmp=Cmp(), HashFctPtr fct=&super_fast_hash)
 
 HashMap (const std::initializer_list< Item > &)
 
 HashMap (const HashMap &map)
 
 HashMap (HashMap &&map)
 
HashMapoperator= (const HashMap &m)
 
HashMapoperator= (HashMap &&m)
 
void swap (HashMap &map)
 
HashFctType & get_hash_fct ()
 
const HashFctType & get_hash_fct () const
 
- Public Member Functions inherited from Designar::GenMap< Key, Value, Cmp, HashSet< MapKey< Key, Value >, CmpWrapper< Key, Value, Cmp >, HashTableType > >
Cmp & get_cmp ()
 
const Cmp & get_cmp () const
 
Value * insert (const Key &k, const Value &v)
 
Value * insert (Key &&k, const Value &v)
 
Value * insert (const Key &k, Value &&v)
 
Value * insert (Key &&k, Value &&v)
 
Value * append (const Key &k, const Value &v)
 
Value * append (Key &&k, const Value &v)
 
Value * append (const Key &k, Value &&v)
 
Value * append (Key &&k, Value &&v)
 
Value * search (const Key &k)
 
Value * search (Key &&k)
 
const Value * search (const Key &k) const
 
const Value * search (Key &&k) const
 
Value * search_or_insert (const Key &k, const Value &v)
 
Value * search_or_insert (Key &&k, const Value &v)
 
Value * search_or_insert (const Key &k, Value &&v)
 
Value * search_or_insert (Key &&k, Value &&v)
 
Value * search_or_insert (const Key &k)
 
Value * search_or_insert (Key &&k)
 
Value & find (const Key &k)
 
const Value & find (const Key &k) const
 
Value & find (Key &&k)
 
const Value & find (Key &&k) const
 
bool has (const Key &k) const
 
bool has (Key &&k) const
 
bool remove (const Key &k)
 
Value & operator[] (const Key &k)
 
const Value & operator[] (const Key &k) const
 
Value & operator[] (Key &&k)
 
const Value & operator[] (Key &&k) const
 

Additional Inherited Members

- Public Types inherited from Designar::GenMap< Key, Value, Cmp, HashSet< MapKey< Key, Value >, CmpWrapper< Key, Value, Cmp >, HashTableType > >
using KeyType = Key
 
using ValueType = Value
 
using SizeType = nat_t
 
using CmpType = Cmp
 
- Public Types inherited from Designar::HashSet< MapKey< Key, Value >, CmpWrapper< Key, Value, Cmp >, HashTableType >
using ContainerType = HashTableType< MapKey< Key, Value >, CmpWrapper< Key, Value, Cmp > >
 

Constructor & Destructor Documentation

template<typename Key, typename Value, class Cmp = std::equal_to<Key>, template< typename, class > class HashTableType = LHashTable>
Designar::HashMap< Key, Value, Cmp, HashTableType >::HashMap ( nat_t  size,
Cmp &  _cmp,
HashFctPtr  _fct 
)
inline
template<typename Key, typename Value, class Cmp = std::equal_to<Key>, template< typename, class > class HashTableType = LHashTable>
Designar::HashMap< Key, Value, Cmp, HashTableType >::HashMap ( nat_t  size,
Cmp &&  _cmp = Cmp(),
HashFctPtr  fct = &super_fast_hash 
)
inline
template<typename Key, typename Value, class Cmp = std::equal_to<Key>, template< typename, class > class HashTableType = LHashTable>
Designar::HashMap< Key, Value, Cmp, HashTableType >::HashMap ( Cmp &  _cmp,
HashFctPtr  _fct 
)
inline
template<typename Key, typename Value, class Cmp = std::equal_to<Key>, template< typename, class > class HashTableType = LHashTable>
Designar::HashMap< Key, Value, Cmp, HashTableType >::HashMap ( Cmp &&  _cmp = Cmp(),
HashFctPtr  fct = &super_fast_hash 
)
inline
template<typename Key , typename Value , class Cmp, template< typename, class > class HashTableType>
Designar::HashMap< Key, Value, Cmp, HashTableType >::HashMap ( const std::initializer_list< Item > &  l)
template<typename Key, typename Value, class Cmp = std::equal_to<Key>, template< typename, class > class HashTableType = LHashTable>
Designar::HashMap< Key, Value, Cmp, HashTableType >::HashMap ( const HashMap< Key, Value, Cmp, HashTableType > &  map)
inline
template<typename Key, typename Value, class Cmp = std::equal_to<Key>, template< typename, class > class HashTableType = LHashTable>
Designar::HashMap< Key, Value, Cmp, HashTableType >::HashMap ( HashMap< Key, Value, Cmp, HashTableType > &&  map)
inline

Member Function Documentation

template<typename Key, typename Value, class Cmp = std::equal_to<Key>, template< typename, class > class HashTableType = LHashTable>
HashFctType& Designar::HashMap< Key, Value, Cmp, HashTableType >::get_hash_fct ( )
inline
template<typename Key, typename Value, class Cmp = std::equal_to<Key>, template< typename, class > class HashTableType = LHashTable>
const HashFctType& Designar::HashMap< Key, Value, Cmp, HashTableType >::get_hash_fct ( ) const
inline
template<typename Key, typename Value, class Cmp = std::equal_to<Key>, template< typename, class > class HashTableType = LHashTable>
HashMap& Designar::HashMap< Key, Value, Cmp, HashTableType >::operator= ( const HashMap< Key, Value, Cmp, HashTableType > &  m)
inline
template<typename Key, typename Value, class Cmp = std::equal_to<Key>, template< typename, class > class HashTableType = LHashTable>
HashMap& Designar::HashMap< Key, Value, Cmp, HashTableType >::operator= ( HashMap< Key, Value, Cmp, HashTableType > &&  m)
inline
template<typename Key, typename Value, class Cmp = std::equal_to<Key>, template< typename, class > class HashTableType = LHashTable>
void Designar::HashMap< Key, Value, Cmp, HashTableType >::swap ( HashMap< Key, Value, Cmp, HashTableType > &  map)
inline

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