hashtable Class Reference

class hashtable
Public Member Functions
reference _M_insert (const value_type &)
_STLP_TEMPLATE_FOR_CONT_EXT size_type bucket (const _KT &)
size_type bucket_count ()
void clear ()
_STLP_TEMPLATE_FOR_CONT_EXT size_type count (const _KT &)
size_type elems_in_bucket ( size_type )
_STLP_TEMPLATE_FOR_CONT_EXT pair < iterator , iterator > equal_range (const _KT &)
_STLP_TEMPLATE_FOR_CONT_EXT pair < const_iterator , const_iterator > equal_range (const _KT &)
size_type erase (const key_type &)
void erase ( const_iterator )
void erase ( const_iterator , const_iterator )
_STLP_TEMPLATE_FOR_CONT_EXT iterator find (const _KT &)
_STLP_TEMPLATE_FOR_CONT_EXT const_iterator find (const _KT &)
hasher hash_funct ()
iterator insert_equal (const value_type &)
void insert_equal (const value_type *, const value_type *)
void insert_equal ( const_iterator , const_iterator )
iterator insert_equal_noresize (const value_type &)
pair < iterator , bool > insert_unique (const value_type &)
void insert_unique (const value_type *, const value_type *)
void insert_unique ( const_iterator , const_iterator )
pair < iterator , bool > insert_unique_noresize (const value_type &)
key_equal key_eq ()
float load_factor ()
size_type max_bucket_count ()
float max_load_factor ()
void max_load_factor (float)
void rehash ( size_type )
void resize ( size_type )
Protected Member Functions
iterator _M_insert_noresize ( size_type , const value_type &)
Private Member Functions
hashtable ( size_type , const _HF &, const _EqK &, const _ExK &, const allocator_type &)
hashtable ( size_type , const _HF &, const _EqK &, const allocator_type &)
hashtable (const _Self &)
hashtable ( __move_source < _Self >)
~hashtable ()
iterator _M_before_begin ( size_type &)
size_type _M_bkt_num (const value_type &)
size_type _M_bkt_num (const value_type &, size_t )
_STLP_TEMPLATE_FOR_CONT_EXT size_type _M_bkt_num_key (const _KT &)
_STLP_TEMPLATE_FOR_CONT_EXT size_type _M_bkt_num_key (const _KT &, size_type )
void _M_copy_from (const _Self &)
_STLP_TEMPLATE_FOR_CONT_EXT _ElemsIte _M_find (const _KT &)
void _M_initialize_buckets ( size_type )
void _M_rehash ( size_type )
_STLP_FORCE_ALLOCATORS (_Val, _All)
iterator _S_before_begin (const _ElemsCont &, const _BucketVector &, size_type &)
iterator begin ()
local_iterator begin ( size_type )
const_iterator begin ()
const_local_iterator begin ( size_type )
bool empty ()
iterator end ()
local_iterator end ( size_type )
const_iterator end ()
const_local_iterator end ( size_type )
allocator_type get_allocator ()
size_type max_size ()
_Self & operator= (const _Self &)
size_type size ()
void swap ( _Self &)
Public Member Type Definitions
typedef forward_iterator_tag _Iterator_category
typedef const value_type * const_pointer
typedef const value_type & const_reference
typedef ptrdiff_t difference_type
typedef _HF hasher
typedef _EqK key_equal
typedef _Key key_type
typedef _NonConstTraits::pointer pointer
typedef _NonConstTraits::reference reference
typedef size_t size_type
typedef _Val value_type
Private Member Type Definitions
typedef _STLP_PRIV _Slist_node_base _BucketType
typedef vector < _BucketType *, _M_bucket_allocator_type > _BucketVector
typedef _Traits::_ConstLocalTraits _ConstLocalTraits
typedef _Traits::_ConstTraits _ConstTraits
typedef _ElemsCont::const_iterator _ElemsConstIte
typedef _ElemsCont::iterator _ElemsIte
typedef _Alloc_traits < _BucketType *, _All >:: allocator_type _M_bucket_allocator_type
typedef _Traits::_NonConstLocalTraits _NonConstLocalTraits
typedef _Traits::_NonConstTraits _NonConstTraits
typedef hashtable < _Val, _Key, _HF, _Traits, _ExK, _EqK, _All > _Self
typedef _Alloc_traits < _Val, _All >:: allocator_type allocator_type
typedef _STLP_PRIV _Ht_iterator < _ElemsIte , _ConstLocalTraits > const_local_iterator
typedef _STLP_PRIV _Ht_iterator < _ElemsIte , _NonConstLocalTraits > local_iterator
Private Attributes
_BucketVector _M_buckets
_ElemsCont _M_elems
key_equal _M_equals
_ExK _M_get_key
hasher _M_hash
float _M_max_load_factor
size_type _M_num_elements
_STLP_KEY_TYPE_FOR_CONT_EXT( key_type ) public typedef _STLP_PRIV _Ht_iterator < _ElemsIte , _ConstTraits > const_iterator

Constructor & Destructor Documentation

hashtable(size_type, const _HF &, const _EqK &, const _ExK &, const allocator_type &)

hashtable ( size_type __n,
const _HF & __hf,
const _EqK & __eql,
const _ExK & __ext,
const allocator_type & __a =  allocator_type ()
) [private, inline]

Parameters

size_type __n
const _HF & __hf
const _EqK & __eql
const _ExK & __ext
const allocator_type & __a =  allocator_type ()

hashtable(size_type, const _HF &, const _EqK &, const allocator_type &)

hashtable ( size_type __n,
const _HF & __hf,
const _EqK & __eql,
const allocator_type & __a =  allocator_type ()
) [private, inline]

Parameters

size_type __n
const _HF & __hf
const _EqK & __eql
const allocator_type & __a =  allocator_type ()

hashtable(const _Self &)

hashtable ( const _Self & __ht ) [private, inline]

Parameters

const _Self & __ht

hashtable(__move_source< _Self >)

hashtable ( __move_source < _Self > src ) [private, inline]

Parameters

__move_source < _Self > src

~hashtable()

~hashtable ( ) [private, inline]

Member Functions Documentation

_M_before_begin(size_type &)

iterator _M_before_begin ( size_type & __n ) const [private]

Parameters

size_type & __n

_M_bkt_num(const value_type &)

size_type _M_bkt_num ( const value_type & __obj ) const [private, inline]

Parameters

const value_type & __obj

_M_bkt_num(const value_type &, size_t)

size_type _M_bkt_num ( const value_type & __obj,
size_t __n
) const [private, inline]

Parameters

const value_type & __obj
size_t __n

_M_bkt_num_key(const _KT &)

_STLP_TEMPLATE_FOR_CONT_EXT size_type _M_bkt_num_key ( const _KT & __key ) const [private, inline]

Parameters

const _KT & __key

_M_bkt_num_key(const _KT &, size_type)

_STLP_TEMPLATE_FOR_CONT_EXT size_type _M_bkt_num_key ( const _KT & __key,
size_type __n
) const [private, inline]

Parameters

const _KT & __key
size_type __n

_M_copy_from(const _Self &)

void _M_copy_from ( const _Self & __ht ) [private]

Parameters

const _Self & __ht

_M_find(const _KT &)

_STLP_TEMPLATE_FOR_CONT_EXT _ElemsIte _M_find ( const _KT & __key ) const [private, inline]

Parameters

const _KT & __key

_M_initialize_buckets(size_type)

void _M_initialize_buckets ( size_type __n ) [private, inline]

Parameters

size_type __n

_M_insert(const value_type &)

reference _M_insert ( const value_type & __obj )

Parameters

const value_type & __obj

_M_insert_noresize(size_type, const value_type &)

iterator _M_insert_noresize ( size_type __n,
const value_type & __obj
) [protected]

Parameters

size_type __n
const value_type & __obj

_M_rehash(size_type)

void _M_rehash ( size_type __num_buckets ) [private]

Parameters

size_type __num_buckets

_STLP_FORCE_ALLOCATORS(_Val, _All)

_STLP_FORCE_ALLOCATORS ( _Val ,
_All
) [private]

Parameters

_Val
_All

_S_before_begin(const _ElemsCont &, const _BucketVector &, size_type &)

iterator _S_before_begin ( const _ElemsCont & __elems,
const _BucketVector & __buckets,
size_type & __n
) [private, static]

Parameters

const _ElemsCont & __elems
const _BucketVector & __buckets
size_type & __n

begin()

iterator begin ( ) [private, inline]

begin(size_type)

local_iterator begin ( size_type __n ) [private, inline]

Parameters

size_type __n

begin()

const_iterator begin ( ) const [private, inline]

begin(size_type)

const_local_iterator begin ( size_type __n ) const [private, inline]

Parameters

size_type __n

bucket(const _KT &)

_STLP_TEMPLATE_FOR_CONT_EXT size_type bucket ( const _KT & __k ) const [inline]

Parameters

const _KT & __k

bucket_count()

size_type bucket_count ( ) const [inline]

clear()

void clear ( )

count(const _KT &)

_STLP_TEMPLATE_FOR_CONT_EXT size_type count ( const _KT & __key ) const [inline]

Parameters

const _KT & __key

elems_in_bucket(size_type)

size_type elems_in_bucket ( size_type __bucket ) const [inline]

Parameters

size_type __bucket

empty()

bool empty ( ) const [private, inline]

end()

iterator end ( ) [private, inline]

end(size_type)

local_iterator end ( size_type __n ) [private, inline]

Parameters

size_type __n

end()

const_iterator end ( ) const [private, inline]

end(size_type)

const_local_iterator end ( size_type __n ) const [private, inline]

Parameters

size_type __n

equal_range(const _KT &)

_STLP_TEMPLATE_FOR_CONT_EXT pair < iterator , iterator > equal_range ( const _KT & __key ) [inline]

Parameters

const _KT & __key

equal_range(const _KT &)

_STLP_TEMPLATE_FOR_CONT_EXT pair < const_iterator , const_iterator > equal_range ( const _KT & __key ) const [inline]

Parameters

const _KT & __key

erase(const key_type &)

size_type erase ( const key_type & __key )

Parameters

const key_type & __key

erase(const_iterator)

void erase ( const_iterator __it )

Parameters

const_iterator __it

erase(const_iterator, const_iterator)

void erase ( const_iterator __first,
const_iterator __last
)

Parameters

const_iterator __first
const_iterator __last

find(const _KT &)

_STLP_TEMPLATE_FOR_CONT_EXT iterator find ( const _KT & __key ) [inline]

Parameters

const _KT & __key

find(const _KT &)

_STLP_TEMPLATE_FOR_CONT_EXT const_iterator find ( const _KT & __key ) const [inline]

Parameters

const _KT & __key

get_allocator()

allocator_type get_allocator ( ) const [private, inline]

hash_funct()

hasher hash_funct ( ) const [inline]

insert_equal(const value_type &)

iterator insert_equal ( const value_type & __obj ) [inline]

Parameters

const value_type & __obj

insert_equal(const value_type *, const value_type *)

void insert_equal ( const value_type * __f,
const value_type * __l
) [inline]

Parameters

const value_type * __f
const value_type * __l

insert_equal(const_iterator, const_iterator)

void insert_equal ( const_iterator __f,
const_iterator __l
) [inline]

insert_equal_noresize(const value_type &)

iterator insert_equal_noresize ( const value_type & __obj )

Parameters

const value_type & __obj

insert_unique(const value_type &)

pair < iterator , bool > insert_unique ( const value_type & __obj ) [inline]

Parameters

const value_type & __obj

insert_unique(const value_type *, const value_type *)

void insert_unique ( const value_type * __f,
const value_type * __l
) [inline]

Parameters

const value_type * __f
const value_type * __l

insert_unique(const_iterator, const_iterator)

void insert_unique ( const_iterator __f,
const_iterator __l
) [inline]

insert_unique_noresize(const value_type &)

pair < iterator , bool > insert_unique_noresize ( const value_type & __obj )

Parameters

const value_type & __obj

key_eq()

key_equal key_eq ( ) const [inline]

load_factor()

float load_factor ( ) const [inline]

max_bucket_count()

size_type max_bucket_count ( ) const [inline]

max_load_factor()

float max_load_factor ( ) const [inline]

max_load_factor(float)

void max_load_factor ( float __z ) [inline]

Parameters

float __z

max_size()

size_type max_size ( ) const [private, inline]

operator=(const _Self &)

_Self & operator= ( const _Self & __ht ) [private, inline]

Parameters

const _Self & __ht

rehash(size_type)

void rehash ( size_type __num_buckets_hint )

Parameters

size_type __num_buckets_hint

resize(size_type)

void resize ( size_type __num_elements_hint )

Parameters

size_type __num_elements_hint

size()

size_type size ( ) const [private, inline]

swap(_Self &)

void swap ( _Self & __ht ) [private, inline]

Parameters

_Self & __ht

Member Type Definitions Documentation

Typedef _BucketType

typedef _STLP_PRIV _Slist_node_base _BucketType [private]

Typedef _BucketVector

typedef vector < _BucketType *, _M_bucket_allocator_type > _BucketVector [private]

Typedef _ConstLocalTraits

typedef _Traits::_ConstLocalTraits _ConstLocalTraits [private]

Typedef _ConstTraits

typedef _Traits::_ConstTraits _ConstTraits [private]

Typedef _ElemsConstIte

typedef _ElemsCont::const_iterator _ElemsConstIte [private]

Typedef _ElemsIte

typedef _ElemsCont::iterator _ElemsIte [private]

Typedef _Iterator_category

typedef forward_iterator_tag _Iterator_category

Typedef _M_bucket_allocator_type

typedef _Alloc_traits < _BucketType *, _All >:: allocator_type _M_bucket_allocator_type [private]

Typedef _NonConstLocalTraits

typedef _Traits::_NonConstLocalTraits _NonConstLocalTraits [private]

Typedef _NonConstTraits

typedef _Traits::_NonConstTraits _NonConstTraits [private]

Typedef _Self

typedef hashtable < _Val, _Key, _HF, _Traits, _ExK, _EqK, _All > _Self [private]

Typedef allocator_type

typedef _Alloc_traits < _Val, _All >:: allocator_type allocator_type [private]

Typedef const_local_iterator

typedef _STLP_PRIV _Ht_iterator < _ElemsIte , _ConstLocalTraits > const_local_iterator [private]

Typedef const_pointer

typedef const value_type * const_pointer

Typedef const_reference

typedef const value_type & const_reference

Typedef difference_type

typedef ptrdiff_t difference_type

Typedef hasher

typedef _HF hasher

Typedef key_equal

typedef _EqK key_equal

Typedef key_type

typedef _Key key_type

Typedef local_iterator

typedef _STLP_PRIV _Ht_iterator < _ElemsIte , _NonConstLocalTraits > local_iterator [private]

Typedef pointer

typedef _NonConstTraits::pointer pointer

Typedef reference

typedef _NonConstTraits::reference reference

Typedef size_type

typedef size_t size_type

Typedef value_type

typedef _Val value_type

Member Data Documentation

_BucketVector _M_buckets

_BucketVector _M_buckets [private]

_ElemsCont _M_elems

_ElemsCont _M_elems [private]

key_equal _M_equals

key_equal _M_equals [private]

_ExK _M_get_key

_ExK _M_get_key [private]

hasher _M_hash

hasher _M_hash [private]

float _M_max_load_factor

float _M_max_load_factor [private]

size_type _M_num_elements

size_type _M_num_elements [private]

_STLP_KEY_TYPE_FOR_CONT_EXT(key_type) public typedef _STLP_PRIV _Ht_iterator< _ElemsIte, _ConstTraits > const_iterator

_STLP_KEY_TYPE_FOR_CONT_EXT( key_type ) public typedef _STLP_PRIV _Ht_iterator < _ElemsIte , _ConstTraits > const_iterator [private]