openMSX
Public Types | Public Member Functions | List of all members
StringMap< T, CASE_SENSITIVE > Class Template Reference

#include <StringMap.hh>

Inheritance diagram for StringMap< T, CASE_SENSITIVE >:
Inheritance graph
[legend]
Collaboration diagram for StringMap< T, CASE_SENSITIVE >:
Collaboration graph
[legend]

Public Types

using key_type = const char *
 
using mapped_type = T
 
using value_type = StringMapEntry< T >
 
using size_type = size_t
 
using const_iterator = StringMapConstIterator< T >
 
using iterator = StringMapIterator< T >
 

Public Member Functions

 StringMap (unsigned initialSize=0)
 
 ~StringMap ()
 
iterator begin ()
 
const_iterator begin () const
 
iterator end ()
 
const_iterator end () const
 
iterator find (string_ref key)
 
const_iterator find (string_ref key) const
 
lookup (string_ref key) const
 
T & operator[] (string_ref key)
 
size_type count (string_ref key) const
 
bool insert (value_type *keyValue)
 
void clear ()
 
value_typegetOrCreateValue (string_ref key, T val=T())
 
void remove (value_type *keyValue)
 
void erase (iterator i)
 
bool erase (string_ref key)
 
- Public Member Functions inherited from StringMapImpl
unsigned getNumBuckets () const
 
bool empty () const
 
unsigned size () const
 

Additional Inherited Members

- Static Public Member Functions inherited from StringMapImpl
static StringMapEntryBasegetTombstoneVal ()
 
- Protected Member Functions inherited from StringMapImpl2< CASE_SENSITIVE >
 StringMapImpl2 (unsigned itemSize, unsigned initSize)
 
unsigned lookupBucketFor (string_ref key)
 
int findKey (string_ref key) const
 
void removeKey (StringMapEntryBase *V)
 
StringMapEntryBaseremoveKey (string_ref key)
 
- Protected Member Functions inherited from StringMapImpl
 StringMapImpl (unsigned itemSize, unsigned initSize)
 
 ~StringMapImpl ()
 
void rehashTable ()
 
void init (unsigned size)
 
unsigned * getHashTable () const
 
- Protected Attributes inherited from StringMapImpl
StringMapEntryBase ** theTable
 
unsigned numBuckets
 
unsigned numItems
 
unsigned numTombstones
 
const unsigned itemSize
 

Detailed Description

template<typename T, bool CASE_SENSITIVE = true>
class StringMap< T, CASE_SENSITIVE >

Definition at line 199 of file StringMap.hh.

Member Typedef Documentation

template<typename T, bool CASE_SENSITIVE = true>
using StringMap< T, CASE_SENSITIVE >::const_iterator = StringMapConstIterator<T>

Definition at line 206 of file StringMap.hh.

template<typename T, bool CASE_SENSITIVE = true>
using StringMap< T, CASE_SENSITIVE >::iterator = StringMapIterator<T>

Definition at line 207 of file StringMap.hh.

template<typename T, bool CASE_SENSITIVE = true>
using StringMap< T, CASE_SENSITIVE >::key_type = const char*

Definition at line 202 of file StringMap.hh.

template<typename T, bool CASE_SENSITIVE = true>
using StringMap< T, CASE_SENSITIVE >::mapped_type = T

Definition at line 203 of file StringMap.hh.

template<typename T, bool CASE_SENSITIVE = true>
using StringMap< T, CASE_SENSITIVE >::size_type = size_t

Definition at line 205 of file StringMap.hh.

template<typename T, bool CASE_SENSITIVE = true>
using StringMap< T, CASE_SENSITIVE >::value_type = StringMapEntry<T>

Definition at line 204 of file StringMap.hh.

Constructor & Destructor Documentation

template<typename T, bool CASE_SENSITIVE = true>
StringMap< T, CASE_SENSITIVE >::StringMap ( unsigned  initialSize = 0)
inlineexplicit

Definition at line 209 of file StringMap.hh.

template<typename T, bool CASE_SENSITIVE = true>
StringMap< T, CASE_SENSITIVE >::~StringMap ( )
inline

Definition at line 213 of file StringMap.hh.

Member Function Documentation

template<typename T, bool CASE_SENSITIVE = true>
iterator StringMap< T, CASE_SENSITIVE >::begin ( )
inline

Definition at line 217 of file StringMap.hh.

Referenced by begin().

template<typename T, bool CASE_SENSITIVE = true>
const_iterator StringMap< T, CASE_SENSITIVE >::begin ( ) const
inline

Definition at line 220 of file StringMap.hh.

template<typename T, bool CASE_SENSITIVE = true>
void StringMap< T, CASE_SENSITIVE >::clear ( )
inline
template<typename T, bool CASE_SENSITIVE = true>
size_type StringMap< T, CASE_SENSITIVE >::count ( string_ref  key) const
inline

Definition at line 253 of file StringMap.hh.

template<typename T, bool CASE_SENSITIVE = true>
iterator StringMap< T, CASE_SENSITIVE >::end ( )
inline
template<typename T, bool CASE_SENSITIVE = true>
const_iterator StringMap< T, CASE_SENSITIVE >::end ( ) const
inline

Definition at line 226 of file StringMap.hh.

template<typename T, bool CASE_SENSITIVE = true>
void StringMap< T, CASE_SENSITIVE >::erase ( iterator  i)
inline
template<typename T, bool CASE_SENSITIVE = true>
bool StringMap< T, CASE_SENSITIVE >::erase ( string_ref  key)
inline

Definition at line 334 of file StringMap.hh.

template<typename T, bool CASE_SENSITIVE = true>
iterator StringMap< T, CASE_SENSITIVE >::find ( string_ref  key)
inline
template<typename T, bool CASE_SENSITIVE = true>
const_iterator StringMap< T, CASE_SENSITIVE >::find ( string_ref  key) const
inline

Definition at line 235 of file StringMap.hh.

template<typename T, bool CASE_SENSITIVE = true>
value_type& StringMap< T, CASE_SENSITIVE >::getOrCreateValue ( string_ref  key,
val = T() 
)
inline
template<typename T, bool CASE_SENSITIVE = true>
bool StringMap< T, CASE_SENSITIVE >::insert ( value_type keyValue)
inline

Definition at line 260 of file StringMap.hh.

template<typename T, bool CASE_SENSITIVE = true>
T StringMap< T, CASE_SENSITIVE >::lookup ( string_ref  key) const
inline

Definition at line 243 of file StringMap.hh.

template<typename T, bool CASE_SENSITIVE = true>
T& StringMap< T, CASE_SENSITIVE >::operator[] ( string_ref  key)
inline

Definition at line 249 of file StringMap.hh.

template<typename T, bool CASE_SENSITIVE = true>
void StringMap< T, CASE_SENSITIVE >::remove ( value_type keyValue)
inline

Definition at line 324 of file StringMap.hh.


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