#include <Hash_Map_Manager_T.h>
Collaboration diagram for ACE_Hash_Map_Bucket_Iterator:
Public Methods | |
ACE_Hash_Map_Bucket_Iterator (ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &mm, const EXT_ID &ext_id, int tail = 0) | |
ACE_Hash_Map_Bucket_Iterator< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>& | operator++ (void) |
Prefix advance. | |
ACE_Hash_Map_Bucket_Iterator< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> | operator++ (int) |
Postfix advance. | |
ACE_Hash_Map_Bucket_Iterator< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>& | operator-- (void) |
Prefix reverse. | |
ACE_Hash_Map_Bucket_Iterator< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> | operator-- (int) |
Postfix reverse. | |
ACE_Hash_Map_Entry<EXT_ID, INT_ID>& | operator * (void) const |
Returns a reference to the interal element <this> is pointing to. | |
ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>& | map (void) |
Returns reference the Hash_Map_Manager_Ex that is being iterated over. | |
int | operator== (const ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &) const |
Check if two iterators point to the same position. | |
int | operator!= (const ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &) const |
Protected Methods | |
int | forward_i (void) |
Move forward by one element in the set. Returns 0 when there's no more item in the set after the current items, else 1. | |
int | reverse_i (void) |
Move backward by one element in the set. Returns 0 when there's no more item in the set before the current item, else 1. | |
Protected Attributes | |
ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>* | map_man_ |
Map we are iterating over. | |
ssize_t | index_ |
Keeps track of how far we've advanced in the table. | |
ACE_Hash_Map_Entry<EXT_ID, INT_ID>* | next_ |
Keeps track of how far we've advanced in a linked list in each table slot. |
This class does not perform any internal locking of the it is iterating upon since locking is inherently inefficient and/or error-prone within an STL-style iterator. If you require locking, you can explicitly use an or on the 's internal lock, which is accessible via its <mutex> method. Note that this iterator cannot be created by calling a method on the map, since this would require
|
|
|
Move forward by one element in the set. Returns 0 when there's no more item in the set after the current items, else 1.
|
|
Returns reference the Hash_Map_Manager_Ex that is being iterated over.
|
|
Returns a reference to the interal element <this> is pointing to.
|
|
|
|
Postfix advance.
|
|
Prefix advance.
|
|
Postfix reverse.
|
|
Prefix reverse.
|
|
Check if two iterators point to the same position.
|
|
Move backward by one element in the set. Returns 0 when there's no more item in the set before the current item, else 1.
|
|
Keeps track of how far we've advanced in the table.
|
|
Map we are iterating over.
|
|
Keeps track of how far we've advanced in a linked list in each table slot.
|