#include <itk_hashtable.h>
Public Types | |
typedef hashtable_const_iterator < Value, Key, HashFcn, ExtractKey, EqualKey, Alloc > | const_iterator |
typedef const value_type * | const_pointer |
typedef const value_type & | const_reference |
typedef ptrdiff_t | difference_type |
typedef HashFcn | hasher |
typedef hashtable_iterator < Value, Key, HashFcn, ExtractKey, EqualKey, Alloc > | iterator |
typedef EqualKey | key_equal |
typedef Key | key_type |
typedef value_type * | pointer |
typedef value_type & | reference |
typedef vcl_size_t | size_type |
typedef Value | value_type |
Public Member Functions | |
const_iterator | begin () const |
iterator | begin () |
size_type | bucket_count () const |
void | clear () |
size_type | count (const key_type &key) const |
size_type | elems_in_bucket (size_type bucket) const |
bool | empty () const |
const_iterator | end () const |
iterator | end () |
IUEi_STL_INLINE std::pair < const_iterator, const_iterator > | equal_range (const key_type &key) const |
IUEi_STL_INLINE std::pair < iterator, iterator > | equal_range (const key_type &key) |
IUEi_STL_INLINE void | erase (const_iterator first, const_iterator last) |
IUEi_STL_INLINE void | erase (const const_iterator &it) |
IUEi_STL_INLINE void | erase (iterator first, iterator last) |
IUEi_STL_INLINE void | erase (const iterator &it) |
IUEi_STL_INLINE size_type | erase (const key_type &key) |
const_iterator | find (const key_type &key) const |
iterator | find (const key_type &key) |
IUEi_STL_INLINE reference | find_or_insert (const value_type &obj) |
hasher | hash_funct () const |
hashtable (const self &ht) | |
hashtable (size_type n, const HashFcn &hf, const EqualKey &eql) | |
hashtable (size_type n, const HashFcn &hf, const EqualKey &eql, const ExtractKey &ext) | |
void | insert_equal (const_iterator f, const_iterator l) |
void | insert_equal (const value_type *f, const value_type *l) |
iterator | insert_equal (const value_type &obj) |
IUEi_STL_INLINE iterator | insert_equal_noresize (const value_type &obj) |
void | insert_unique (const_iterator f, const_iterator l) |
void | insert_unique (const value_type *f, const value_type *l) |
std::pair< iterator, bool > | insert_unique (const value_type &obj) |
IUEi_STL_INLINE std::pair < iterator, bool > | insert_unique_noresize (const value_type &obj) |
key_equal | key_eq () const |
size_type | max_bucket_count () const |
size_type | max_size () const |
self & | operator= (const self &ht) |
IUEi_STL_INLINE void | resize (size_type num_elements_hint) |
size_type | size () const |
void | swap (self &ht) |
~hashtable () | |
Protected Types | |
typedef std::vector < VCL_SUNPRO_ALLOCATOR_HACK(node *) | buckets_type ) |
Protected Member Functions | |
IUEi_STL_INLINE void | copy_from (const hashtable_base< Value, Alloc > &ht) |
void | delete_node (node *n) |
node * | new_node (const value_type &obj) |
Protected Attributes | |
buckets_type | buckets |
size_type | num_elements |
Friends | |
struct | hashtable_const_iterator< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc > |
struct | hashtable_iterator< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc > |
bool operator==ITK_FRIEND_TEMPLATE_FUNCTION_ARGUMENT() | self (const self &, const self &) |
Definition at line 357 of file itk_hashtable.h.
typedef std::vector<VCL_SUNPRO_ALLOCATOR_HACK(node*) itk::hashtable_base< Value , Alloc >::buckets_type) [inherited] |
Definition at line 312 of file itk_hashtable.h.
typedef hashtable_const_iterator<Value, Key, HashFcn, ExtractKey, EqualKey,Alloc> itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::const_iterator |
Definition at line 387 of file itk_hashtable.h.
typedef const value_type* itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::const_pointer |
Definition at line 370 of file itk_hashtable.h.
typedef const value_type& itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::const_reference |
Definition at line 372 of file itk_hashtable.h.
typedef ptrdiff_t itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::difference_type |
Definition at line 368 of file itk_hashtable.h.
typedef HashFcn itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::hasher |
Definition at line 364 of file itk_hashtable.h.
typedef hashtable_iterator<Value, Key, HashFcn, ExtractKey, EqualKey, Alloc> itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::iterator |
Definition at line 386 of file itk_hashtable.h.
typedef EqualKey itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::key_equal |
Definition at line 365 of file itk_hashtable.h.
typedef Key itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::key_type |
Definition at line 362 of file itk_hashtable.h.
typedef value_type* itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::pointer |
Definition at line 369 of file itk_hashtable.h.
typedef value_type& itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::reference |
Definition at line 371 of file itk_hashtable.h.
typedef vcl_size_t itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::size_type |
Reimplemented from itk::hashtable_base< Value, Alloc >.
Definition at line 367 of file itk_hashtable.h.
typedef Value itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::value_type |
Reimplemented from itk::hashtable_base< Value, Alloc >.
Definition at line 363 of file itk_hashtable.h.
itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::hashtable | ( | size_type | n, | |
const HashFcn & | hf, | |||
const EqualKey & | eql, | |||
const ExtractKey & | ext | |||
) | [inline] |
Definition at line 392 of file itk_hashtable.h.
itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::hashtable | ( | size_type | n, | |
const HashFcn & | hf, | |||
const EqualKey & | eql | |||
) | [inline] |
Definition at line 401 of file itk_hashtable.h.
itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::hashtable | ( | const self & | ht | ) | [inline] |
Definition at line 409 of file itk_hashtable.h.
itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::~hashtable | ( | ) | [inline] |
Definition at line 429 of file itk_hashtable.h.
const_iterator itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::begin | ( | ) | const [inline] |
Definition at line 458 of file itk_hashtable.h.
iterator itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::begin | ( | ) | [inline] |
Definition at line 444 of file itk_hashtable.h.
Referenced by itk::hash_multimap< Key, T,,, >::begin(), itk::hash_multiset< Value,,, >::begin(), itk::hash_map< unsigned long, segment_t, itk::hash< unsigned long > >::begin(), and itk::hash_set< Value,,, >::begin().
size_type itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::bucket_count | ( | ) | const [inline] |
void itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::clear | ( | ) | [inline] |
Reimplemented from itk::hashtable_base< Value, Alloc >.
Definition at line 598 of file itk_hashtable.h.
Referenced by itk::hash_map< unsigned long, segment_t, itk::hash< unsigned long > >::clear(), itk::hash_multiset< Value,,, >::clear(), itk::hash_set< Value,,, >::clear(), and itk::hash_multimap< Key, T,,, >::clear().
IUEi_STL_INLINE void itk::hashtable_base< Value , Alloc >::copy_from | ( | const hashtable_base< Value , Alloc > & | ht | ) | [protected, inherited] |
size_type itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::count | ( | const key_type & | key | ) | const [inline] |
Definition at line 572 of file itk_hashtable.h.
Referenced by itk::hash_multimap< Key, T,,, >::count(), itk::hash_map< unsigned long, segment_t, itk::hash< unsigned long > >::count(), itk::hash_set< Value,,, >::count(), and itk::hash_multiset< Value,,, >::count().
void itk::hashtable_base< Value , Alloc >::delete_node | ( | node * | n | ) | [inline, protected, inherited] |
Definition at line 334 of file itk_hashtable.h.
size_type itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::elems_in_bucket | ( | size_type | bucket | ) | const [inline] |
Definition at line 481 of file itk_hashtable.h.
Referenced by itk::hash_set< Value,,, >::elems_in_bucket(), itk::hash_multiset< Value,,, >::elems_in_bucket(), itk::hash_map< unsigned long, segment_t, itk::hash< unsigned long > >::elems_in_bucket(), and itk::hash_multimap< Key, T,,, >::elems_in_bucket().
bool itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::empty | ( | ) | const [inline] |
Definition at line 433 of file itk_hashtable.h.
Referenced by itk::hash_map< unsigned long, segment_t, itk::hash< unsigned long > >::empty(), itk::hash_multiset< Value,,, >::empty(), itk::hash_multimap< Key, T,,, >::empty(), and itk::hash_set< Value,,, >::empty().
const_iterator itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::end | ( | ) | const [inline] |
Definition at line 470 of file itk_hashtable.h.
iterator itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::end | ( | ) | [inline] |
Definition at line 456 of file itk_hashtable.h.
Referenced by itk::hash_multimap< Key, T,,, >::end(), itk::hash_set< Value,,, >::end(), itk::hash_map< unsigned long, segment_t, itk::hash< unsigned long > >::end(), and itk::hash_multiset< Value,,, >::end().
IUEi_STL_INLINE std::pair<const_iterator, const_iterator> itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::equal_range | ( | const key_type & | key | ) | const |
IUEi_STL_INLINE std::pair<iterator, iterator> itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::equal_range | ( | const key_type & | key | ) |
IUEi_STL_INLINE void itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::erase | ( | const_iterator | first, | |
const_iterator | last | |||
) |
IUEi_STL_INLINE void itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::erase | ( | const const_iterator & | it | ) |
IUEi_STL_INLINE void itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::erase | ( | iterator | first, | |
iterator | last | |||
) |
IUEi_STL_INLINE void itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::erase | ( | const iterator & | it | ) |
IUEi_STL_INLINE size_type itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::erase | ( | const key_type & | key | ) |
const_iterator itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::find | ( | const key_type & | key | ) | const [inline] |
Definition at line 561 of file itk_hashtable.h.
iterator itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::find | ( | const key_type & | key | ) | [inline] |
Definition at line 550 of file itk_hashtable.h.
Referenced by itk::hash_multimap< Key, T,,, >::find(), itk::hash_map< unsigned long, segment_t, itk::hash< unsigned long > >::find(), itk::hash_set< Value,,, >::find(), and itk::hash_multiset< Value,,, >::find().
IUEi_STL_INLINE reference itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::find_or_insert | ( | const value_type & | obj | ) |
hasher itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::hash_funct | ( | ) | const [inline] |
Definition at line 374 of file itk_hashtable.h.
Referenced by itk::hash_set< Value,,, >::hash_funct(), itk::hash_multimap< Key, T,,, >::hash_funct(), and itk::hash_multiset< Value,,, >::hash_funct().
void itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::insert_equal | ( | const_iterator | f, | |
const_iterator | l | |||
) | [inline] |
Definition at line 537 of file itk_hashtable.h.
void itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::insert_equal | ( | const value_type * | f, | |
const value_type * | l | |||
) | [inline] |
Definition at line 516 of file itk_hashtable.h.
iterator itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::insert_equal | ( | const value_type & | obj | ) | [inline] |
Definition at line 497 of file itk_hashtable.h.
Referenced by itk::hash_multimap< Key, T,,, >::hash_multimap(), itk::hash_multiset< Value,,, >::hash_multiset(), itk::hash_multiset< Value,,, >::insert(), and itk::hash_multimap< Key, T,,, >::insert().
IUEi_STL_INLINE iterator itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::insert_equal_noresize | ( | const value_type & | obj | ) |
void itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::insert_unique | ( | const_iterator | f, | |
const_iterator | l | |||
) | [inline] |
Definition at line 526 of file itk_hashtable.h.
void itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::insert_unique | ( | const value_type * | f, | |
const value_type * | l | |||
) | [inline] |
Definition at line 506 of file itk_hashtable.h.
std::pair<iterator, bool> itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::insert_unique | ( | const value_type & | obj | ) | [inline] |
Definition at line 491 of file itk_hashtable.h.
Referenced by itk::hash_map< unsigned long, segment_t, itk::hash< unsigned long > >::hash_map(), itk::hash_set< Value,,, >::hash_set(), itk::hash_map< unsigned long, segment_t, itk::hash< unsigned long > >::insert(), and itk::hash_set< Value,,, >::insert().
IUEi_STL_INLINE std::pair<iterator, bool> itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::insert_unique_noresize | ( | const value_type & | obj | ) |
key_equal itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::key_eq | ( | ) | const [inline] |
Definition at line 375 of file itk_hashtable.h.
Referenced by itk::hash_multimap< Key, T,,, >::key_eq(), itk::hash_set< Value,,, >::key_eq(), itk::hash_multiset< Value,,, >::key_eq(), and itk::hash_map< unsigned long, segment_t, itk::hash< unsigned long > >::key_eq().
size_type itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::max_bucket_count | ( | ) | const [inline] |
Definition at line 478 of file itk_hashtable.h.
Referenced by itk::hash_multiset< Value,,, >::max_bucket_count(), itk::hash_set< Value,,, >::max_bucket_count(), itk::hash_map< unsigned long, segment_t, itk::hash< unsigned long > >::max_bucket_count(), and itk::hash_multimap< Key, T,,, >::max_bucket_count().
size_type itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::max_size | ( | ) | const [inline] |
node* itk::hashtable_base< Value , Alloc >::new_node | ( | const value_type & | obj | ) | [inline, protected, inherited] |
Definition at line 318 of file itk_hashtable.h.
self& itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::operator= | ( | const self & | ht | ) | [inline] |
Definition at line 415 of file itk_hashtable.h.
IUEi_STL_INLINE void itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::resize | ( | size_type | num_elements_hint | ) |
size_type itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::size | ( | ) | const [inline] |
Definition at line 431 of file itk_hashtable.h.
Referenced by itk::hash_multiset< Value,,, >::size(), itk::hash_set< Value,,, >::size(), itk::hash_multimap< Key, T,,, >::size(), itk::hash_map< unsigned long, segment_t, itk::hash< unsigned long > >::size(), and itk::hashtable< std::pair< const unsigned long, unsigned long >, unsigned long, HashFcn, sel1st, EqualKey, Alloc >::swap().
void itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::swap | ( | self & | ht | ) | [inline] |
Definition at line 435 of file itk_hashtable.h.
Referenced by itk::hash_map< unsigned long, segment_t, itk::hash< unsigned long > >::swap(), itk::hash_set< Value,,, >::swap(), itk::hash_multimap< Key, T,,, >::swap(), and itk::hash_multiset< Value,,, >::swap().
friend struct hashtable_const_iterator< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc > [friend] |
Definition at line 389 of file itk_hashtable.h.
friend struct hashtable_iterator< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc > [friend] |
Definition at line 388 of file itk_hashtable.h.
bool operator==ITK_FRIEND_TEMPLATE_FUNCTION_ARGUMENT() self | ( | const self & | , | |
const self & | ||||
) | [friend] |
buckets_type itk::hashtable_base< Value , Alloc >::buckets [inherited] |
Definition at line 313 of file itk_hashtable.h.
Referenced by itk::hashtable< std::pair< const unsigned long, unsigned long >, unsigned long, HashFcn, sel1st, EqualKey, Alloc >::max_bucket_count(), and itk::operator==().
size_type itk::hashtable_base< Value , Alloc >::num_elements [inherited] |
Definition at line 314 of file itk_hashtable.h.
Referenced by itk::hashtable< std::pair< const unsigned long, unsigned long >, unsigned long, HashFcn, sel1st, EqualKey, Alloc >::empty().