The iterator base for HashTable. More...
Public Member Functions | |
const Key & | key () const |
Return the Key corresponding to the iterator. More... | |
bool | operator== (const iteratorBase &) const |
Compare hashedEntry element pointers. More... | |
bool | operator!= (const iteratorBase &) const |
bool | operator== (const iteratorEnd &unused) const |
Compare hashedEntry to iteratorEnd pointers. More... | |
bool | operator!= (const iteratorEnd &unused) const |
Protected Member Functions | |
iteratorBase () | |
Construct null - equivalent to an 'end' position. More... | |
iteratorBase (const HashTable< T, Key, Hash > *curHashTable) | |
Construct from hash table, moving to its 'begin' position. More... | |
iteratorBase (const HashTable< T, Key, Hash > *curHashTable, const hashedEntry *elmt, const label hashIndex) | |
Construct from hash table, element and hash index. More... | |
void | increment () |
Increment to the next position. More... | |
bool | erase () |
Erase the HashTable element at the current position. More... | |
T & | object () |
Return non-const access to referenced object. More... | |
const T & | cobject () const |
Return const access to referenced object. More... | |
The iterator base for HashTable.
Note: data and functions are protected, to allow reuse by iterator and prevent most external usage. iterator and const_iterator have the same size, allowing us to reinterpret_cast between them (if desired)
Definition at line 354 of file HashTable.H.
|
inlineprotected |
Construct null - equivalent to an 'end' position.
Definition at line 156 of file HashTableI.H.
Referenced by HashTable< T, Key, Hash >::const_iterator::const_iterator(), HashTable< T, Key, Hash >::iterator::iterator(), and HashTable< T, Key, Hash >::iteratorBase::iteratorBase().
|
inlineexplicitprotected |
Construct from hash table, moving to its 'begin' position.
Definition at line 166 of file HashTableI.H.
References HashTable< T, Key, Hash >::iteratorBase::iteratorBase().
|
inlineprotected |
Construct from hash table, element and hash index.
Definition at line 196 of file HashTableI.H.
|
inlineprotected |
Increment to the next position.
Definition at line 210 of file HashTableI.H.
Referenced by HashTable< T, Key, Hash >::iterator::operator++(), and HashTable< T, Key, Hash >::const_iterator::operator++().
|
protected |
Erase the HashTable element at the current position.
Definition at line 309 of file HashTable.C.
|
inlineprotected |
Return non-const access to referenced object.
Definition at line 262 of file HashTableI.H.
References Foam::T().
Referenced by HashTable< T, Key, Hash >::iterator::operator()(), and HashTable< T, Key, Hash >::iterator::operator*().
|
inlineprotected |
Return const access to referenced object.
Definition at line 270 of file HashTableI.H.
Referenced by HashTable< T, Key, Hash >::iterator::operator()(), HashTable< T, Key, Hash >::const_iterator::operator()(), HashTable< T, Key, Hash >::iterator::operator*(), and HashTable< T, Key, Hash >::const_iterator::operator*().
|
inline |
Return the Key corresponding to the iterator.
Definition at line 254 of file HashTableI.H.
References Foam::T().
Referenced by regionSizeDistribution::write().
|
inline |
Compare hashedEntry element pointers.
Definition at line 278 of file HashTableI.H.
|
inline |
Definition at line 288 of file HashTableI.H.
|
inline |
Compare hashedEntry to iteratorEnd pointers.
Definition at line 298 of file HashTableI.H.
|
inline |
Definition at line 308 of file HashTableI.H.