THashMapIter Class Reference

class THashMapIter : public THashTableIterBase

A templated class which allows iteration over the elements of a RHashMap<K,V> class.

The array being iterated over may not be modified while an iteration is in progress or the iteration operations may malfunction or panic.

RHashMap<K,V>

Inherits from

Nested Classes and Structures

Constructor & Destructor Documentation

THashMapIter(const RHashMap< K, V > &)

THashMapIter(const RHashMap< K, V > &aMap)[inline]

Construct an iterator over the specified associative array. The iterator starts at conceptual position one before the beginning of the list being iterated.

Parameters

const RHashMap< K, V > & aMapThe array to be iterated over.

Member Functions Documentation

CurrentKey()

const K *CurrentKey()const [inline]

Return the key corresponding to the current position of the iterator.

A pointer to the key object corresponding to the current position of the iterator. NULL if the iterator has just been constructed or reset, or if it has previously reached the end of an iteration.

CurrentValue()

V *CurrentValue()[inline]

Return the value corresponding to the current position of the iterator.

A pointer to the value object corresponding to the current position of the iterator. NULL if the iterator has just been constructed or reset, or if it has previously reached the end of an iteration.

NextKey()

const K *NextKey()[inline]

Steps the iterator to the next position and returns the corresponding key.

A pointer to the key object corresponding to the next position of the iterator. NULL if the iterator has exhausted all the available key-value pairs.

NextValue()

const V *NextValue()[inline]

Steps the iterator to the next position and returns the corresponding value.

A pointer to the value object corresponding to the next position of the iterator. NULL if the iterator has exhausted all the available key-value pairs.

RemoveCurrent()

voidRemoveCurrent()[inline]

Removes the element at the current iterator position from the hash table. If the iterator does not currently point to a valid element, no action is taken. Note that the iterator position is not altered so it no longer points to a valid element following the Remove(). It is illegal to call either CurrentKey() or CurrentValue() on the iterator after calling Remove() - the only legal operations are Reset(), NextKey() or NextValue().

Reset()

voidReset()[inline]

Reset the iterator to its initial state.