hashtable Class Reference

class hashtable
Public Member Functions
reference _M_insert(const value_type &)
_STLP_TEMPLATE_FOR_CONT_EXT size_typebucket(const _KT &)
size_type bucket_count()
voidclear()
_STLP_TEMPLATE_FOR_CONT_EXT size_typecount(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 &)
voiderase(const_iterator)
voiderase(const_iterator, const_iterator)
_STLP_TEMPLATE_FOR_CONT_EXT iteratorfind(const _KT &)
_STLP_TEMPLATE_FOR_CONT_EXT const_iteratorfind(const _KT &)
hasher hash_funct()
iterator insert_equal(const value_type &)
voidinsert_equal(const value_type *, const value_type *)
voidinsert_equal(const_iterator, const_iterator)
iterator insert_equal_noresize(const value_type &)
pair< iterator, bool >insert_unique(const value_type &)
voidinsert_unique(const value_type *, const value_type *)
voidinsert_unique(const_iterator, const_iterator)
pair< iterator, bool >insert_unique_noresize(const value_type &)
key_equal key_eq()
floatload_factor()
size_type max_bucket_count()
floatmax_load_factor()
voidmax_load_factor(float)
voidrehash(size_type)
voidresize(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)
boolempty()
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()
voidswap(_Self &)
Public Member Type Definitions
typedef forward_iterator_tag _Iterator_category
typedefconst value_type * const_pointer
typedefconst 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_typebucket(const _KT &__k)const [inline]

Parameters

const _KT & __k

bucket_count()

size_type bucket_count()const [inline]

clear()

voidclear()

count(const _KT &)

_STLP_TEMPLATE_FOR_CONT_EXT size_typecount(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()

boolempty()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)

voiderase(const_iterator__it)

Parameters

const_iterator __it

erase(const_iterator, const_iterator)

voiderase(const_iterator__first,
const_iterator__last
)

Parameters

const_iterator __first
const_iterator __last

find(const _KT &)

_STLP_TEMPLATE_FOR_CONT_EXT iteratorfind(const _KT &__key)[inline]

Parameters

const _KT & __key

find(const _KT &)

_STLP_TEMPLATE_FOR_CONT_EXT const_iteratorfind(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 *)

voidinsert_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)

voidinsert_equal(const_iterator__f,
const_iterator__l
)[inline]

Parameters

const_iterator __f
const_iterator __l

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 *)

voidinsert_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)

voidinsert_unique(const_iterator__f,
const_iterator__l
)[inline]

Parameters

const_iterator __f
const_iterator __l

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()

floatload_factor()const [inline]

max_bucket_count()

size_type max_bucket_count()const [inline]

max_load_factor()

floatmax_load_factor()const [inline]

max_load_factor(float)

voidmax_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)

voidrehash(size_type__num_buckets_hint)

Parameters

size_type __num_buckets_hint

resize(size_type)

voidresize(size_type__num_elements_hint)

Parameters

size_type __num_elements_hint

size()

size_type size()const [private, inline]

swap(_Self &)

voidswap(_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_typeallocator_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 _HFhasher

Typedef key_equal

typedef _EqKkey_equal

Typedef key_type

typedef _Keykey_type

Typedef local_iterator

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

Typedef pointer

typedef _NonConstTraits::pointerpointer

Typedef reference

typedef _NonConstTraits::referencereference

Typedef size_type

typedef size_t size_type

Typedef value_type

typedef _Valvalue_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]