Public Types | Public Member Functions | Friends

wali::HashMap< Key, Data, HashFunc, EqualFunc > Class Template Reference

class HashMap More...

List of all members.

Public Types

enum  enum_size_type_max { SIZE_TYPE_MAX = ULONG_MAX }
typedef HashMapIterator< Key,
Data, HashFunc, EqualFunc > 
iterator
typedef HashMapConstIterator
< Key, Data, HashFunc,
EqualFunc > 
const_iterator
typedef HashMap< Key, Data,
HashFunc, EqualFunc > 
hashmap_type
typedef std::pair< Key, Data > pair_type
typedef pair_type value_type
typedef size_t size_type
typedef Bucket< value_typebucket_type

Public Member Functions

 HashMap (size_type the_size=47)
 HashMap (const HashMap &hm)
HashMapoperator= (const HashMap &hm)
 ~HashMap ()
void clear ()
size_type size () const
size_type capacity () const
std::pair< iterator, bool > insert (const Key &k, const Data &d)
void erase (const Key &key_to_erase)
iterator begin ()
iterator end ()
const_iterator begin () const
const_iterator end () const
Keykey (iterator &it)
const Keykey (const_iterator &it) const
Data & value (iterator &it)
const Data & value (const_iterator &it) const
Data & data (iterator &it)
const Data & data (const_iterator &it) const
void print_stats (std::ostream &o=std::cout) const
std::pair< iterator, bool > insert (const value_type &)
iterator find (const Key &)
const_iterator find (const Key &) const
void erase (iterator it)
Data & operator[] (const Key &k)

Friends

class HashMapIterator< Key, Data, HashFunc, EqualFunc >
class HashMapConstIterator< Key, Data, HashFunc, EqualFunc >

Detailed Description

template<typename Key, typename Data, typename HashFunc = hm_hash< Key >, typename EqualFunc = hm_equal< Key >>
class wali::HashMap< Key, Data, HashFunc, EqualFunc >

class HashMap

Notes: equal_to is part of the STL.


Member Typedef Documentation

template<typename Key, typename Data, typename HashFunc = hm_hash< Key >, typename EqualFunc = hm_equal< Key >>
typedef HashMapIterator< Key,Data,HashFunc,EqualFunc > wali::HashMap< Key, Data, HashFunc, EqualFunc >::iterator
template<typename Key, typename Data, typename HashFunc = hm_hash< Key >, typename EqualFunc = hm_equal< Key >>
typedef HashMapConstIterator< Key,Data,HashFunc,EqualFunc > wali::HashMap< Key, Data, HashFunc, EqualFunc >::const_iterator
template<typename Key, typename Data, typename HashFunc = hm_hash< Key >, typename EqualFunc = hm_equal< Key >>
typedef HashMap< Key,Data,HashFunc,EqualFunc > wali::HashMap< Key, Data, HashFunc, EqualFunc >::hashmap_type
template<typename Key, typename Data, typename HashFunc = hm_hash< Key >, typename EqualFunc = hm_equal< Key >>
typedef std::pair< Key,Data > wali::HashMap< Key, Data, HashFunc, EqualFunc >::pair_type
template<typename Key, typename Data, typename HashFunc = hm_hash< Key >, typename EqualFunc = hm_equal< Key >>
typedef pair_type wali::HashMap< Key, Data, HashFunc, EqualFunc >::value_type
template<typename Key, typename Data, typename HashFunc = hm_hash< Key >, typename EqualFunc = hm_equal< Key >>
typedef size_t wali::HashMap< Key, Data, HashFunc, EqualFunc >::size_type
template<typename Key, typename Data, typename HashFunc = hm_hash< Key >, typename EqualFunc = hm_equal< Key >>
typedef Bucket< value_type > wali::HashMap< Key, Data, HashFunc, EqualFunc >::bucket_type

Member Enumeration Documentation

template<typename Key, typename Data, typename HashFunc = hm_hash< Key >, typename EqualFunc = hm_equal< Key >>
enum wali::HashMap::enum_size_type_max
Enumerator:
SIZE_TYPE_MAX 

Constructor & Destructor Documentation

template<typename Key, typename Data, typename HashFunc = hm_hash< Key >, typename EqualFunc = hm_equal< Key >>
wali::HashMap< Key, Data, HashFunc, EqualFunc >::HashMap ( size_type  the_size = 47  ) 
template<typename Key, typename Data, typename HashFunc = hm_hash< Key >, typename EqualFunc = hm_equal< Key >>
wali::HashMap< Key, Data, HashFunc, EqualFunc >::HashMap ( const HashMap< Key, Data, HashFunc, EqualFunc > &  hm  ) 
template<typename Key, typename Data, typename HashFunc = hm_hash< Key >, typename EqualFunc = hm_equal< Key >>
wali::HashMap< Key, Data, HashFunc, EqualFunc >::~HashMap (  ) 

Member Function Documentation

template<typename Key, typename Data, typename HashFunc = hm_hash< Key >, typename EqualFunc = hm_equal< Key >>
HashMap& wali::HashMap< Key, Data, HashFunc, EqualFunc >::operator= ( const HashMap< Key, Data, HashFunc, EqualFunc > &  hm  ) 
template<typename Key, typename Data, typename HashFunc = hm_hash< Key >, typename EqualFunc = hm_equal< Key >>
void wali::HashMap< Key, Data, HashFunc, EqualFunc >::clear (  ) 
template<typename Key, typename Data, typename HashFunc = hm_hash< Key >, typename EqualFunc = hm_equal< Key >>
size_type wali::HashMap< Key, Data, HashFunc, EqualFunc >::size (  )  const
template<typename Key, typename Data, typename HashFunc = hm_hash< Key >, typename EqualFunc = hm_equal< Key >>
size_type wali::HashMap< Key, Data, HashFunc, EqualFunc >::capacity (  )  const
template<typename Key, typename Data, typename HashFunc = hm_hash< Key >, typename EqualFunc = hm_equal< Key >>
std::pair<iterator,bool> wali::HashMap< Key, Data, HashFunc, EqualFunc >::insert ( const Key k,
const Data &  d 
)
template<typename Key, typename Data, typename HashFunc = hm_hash< Key >, typename EqualFunc = hm_equal< Key >>
void wali::HashMap< Key, Data, HashFunc, EqualFunc >::erase ( const Key key_to_erase  ) 
template<typename Key, typename Data, typename HashFunc = hm_hash< Key >, typename EqualFunc = hm_equal< Key >>
iterator wali::HashMap< Key, Data, HashFunc, EqualFunc >::begin (  ) 
template<typename Key, typename Data, typename HashFunc = hm_hash< Key >, typename EqualFunc = hm_equal< Key >>
iterator wali::HashMap< Key, Data, HashFunc, EqualFunc >::end (  ) 
template<typename Key, typename Data, typename HashFunc = hm_hash< Key >, typename EqualFunc = hm_equal< Key >>
const_iterator wali::HashMap< Key, Data, HashFunc, EqualFunc >::begin (  )  const
template<typename Key, typename Data, typename HashFunc = hm_hash< Key >, typename EqualFunc = hm_equal< Key >>
const_iterator wali::HashMap< Key, Data, HashFunc, EqualFunc >::end (  )  const
template<typename Key, typename Data, typename HashFunc = hm_hash< Key >, typename EqualFunc = hm_equal< Key >>
Key& wali::HashMap< Key, Data, HashFunc, EqualFunc >::key ( iterator it  ) 
template<typename Key, typename Data, typename HashFunc = hm_hash< Key >, typename EqualFunc = hm_equal< Key >>
const Key& wali::HashMap< Key, Data, HashFunc, EqualFunc >::key ( const_iterator it  )  const
template<typename Key, typename Data, typename HashFunc = hm_hash< Key >, typename EqualFunc = hm_equal< Key >>
Data& wali::HashMap< Key, Data, HashFunc, EqualFunc >::value ( iterator it  ) 
template<typename Key, typename Data, typename HashFunc = hm_hash< Key >, typename EqualFunc = hm_equal< Key >>
const Data& wali::HashMap< Key, Data, HashFunc, EqualFunc >::value ( const_iterator it  )  const
template<typename Key, typename Data, typename HashFunc = hm_hash< Key >, typename EqualFunc = hm_equal< Key >>
Data& wali::HashMap< Key, Data, HashFunc, EqualFunc >::data ( iterator it  ) 
template<typename Key, typename Data, typename HashFunc = hm_hash< Key >, typename EqualFunc = hm_equal< Key >>
const Data& wali::HashMap< Key, Data, HashFunc, EqualFunc >::data ( const_iterator it  )  const
template<typename Key, typename Data, typename HashFunc = hm_hash< Key >, typename EqualFunc = hm_equal< Key >>
void wali::HashMap< Key, Data, HashFunc, EqualFunc >::print_stats ( std::ostream &  o = std::cout  )  const
template<typename Key, typename Data, typename HashFunc , typename EqualFunc >
std::pair< HashMapIterator< Key, Data, HashFunc, EqualFunc >, bool > wali::HashMap< Key, Data, HashFunc, EqualFunc >::insert ( const value_type the_value  ) 
template<typename Key, typename Data , typename HashFunc , typename EqualFunc >
HashMapIterator< Key, Data, HashFunc, EqualFunc > wali::HashMap< Key, Data, HashFunc, EqualFunc >::find ( const Key the_key  ) 
template<typename Key, typename Data , typename HashFunc , typename EqualFunc >
HashMapConstIterator< Key, Data, HashFunc, EqualFunc > wali::HashMap< Key, Data, HashFunc, EqualFunc >::find ( const Key the_key  )  const
template<typename Key, typename Data, typename HashFunc = hm_hash< Key >, typename EqualFunc = hm_equal< Key >>
void wali::HashMap< Key, Data, HashFunc, EqualFunc >::erase ( iterator  it  ) 
template<typename Key, typename Data, typename HashFunc = hm_hash< Key >, typename EqualFunc = hm_equal< Key >>
Data& wali::HashMap< Key, Data, HashFunc, EqualFunc >::operator[] ( const Key k  ) 

Friends And Related Function Documentation

template<typename Key, typename Data, typename HashFunc = hm_hash< Key >, typename EqualFunc = hm_equal< Key >>
friend class HashMapIterator< Key, Data, HashFunc, EqualFunc > [friend]
template<typename Key, typename Data, typename HashFunc = hm_hash< Key >, typename EqualFunc = hm_equal< Key >>
friend class HashMapConstIterator< Key, Data, HashFunc, EqualFunc > [friend]

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