Synopsis

Declared in <bslstl_hashtablebucketiterator.h>

template<
    class VALUE_TYPE,
    class DIFFERENCE_TYPE>
class HashTableBucketIterator;

Type Aliases

Name

Description

difference_type

This typedef is an alias to DIFFERENCE_TYPE.

iterator_category

Standard iterator defined types [24.4.2].

pointer

This typedef is an alias to VALUE_TYPE *.

reference

Reference type for the iterator's value type.

value_type

This typedef is an alias for the iterator's value type.

Member Functions

Name

Description

HashTableBucketIterator [constructor]

Constructors

operator=

Copy the value of the specified rhs of another (compatible) HashTableBucketIterator type, (e.g., a mutable iterator of the same type) to this iterator. Return a reference to this modifiable object. Note that this method may be the copy‐assignment operator (inhibiting the implicit declaration of a copy‐assignment operator above), or may be an additional overload.

bucket

Return the address of the hash table bucket referred to by this iterator. Note that this method is an implementation detail intended for debugging purposes only, and is not part of the C++ standard.

node

Return the address of the node holding the element at which this iterator is positioned, or 0 if this iterator is positioned after the end of a bucket. Note that this method is an implementation detail and is not part of the C++ standard.

operator*

Return a reference providing modifiable access to the element (of the template parameter VALUE_TYPE) at which this iterator is positioned. The behavior is undefined unless the iterator refers to a valid (not yet erased) element in a hash table bucket. Note that this iterator is invalidated when the underlying hash table is rehashed.

operator++

Move this iterator to the next element in the hash table bucket and return a reference providing modifiable access to this iterator. The behavior is undefined unless the iterator refers to a valid (not yet erased) element in a bucket. Note that this iterator is invalidated when the underlying hash table is rehashed.

operator‐>

Return the address of the element (of the template parameter VALUE_TYPE) at which this iterator is positioned. The behavior is undefined unless the iterator refers to a valid (not yet erased) element a hash table bucket. Note that this iterator is invalidated when the underlying hash table is rehashed.

Non-Member Functions

Name

Description

operator!=

Same as the preceding overload.

operator!=

Same as the preceding overload.

operator!=

Same as the preceding overload.

operator!=

Return true if the specified lhs and the specified rhs iterators do not have the same value and false otherwise. Two iterators do not have the same value if they refer to the different elements in the same hash table, or if either (but not both) of the iterators are positioned after the end of a hash table bucket.

operator++

Move the specified iter to the next element in the hash table bucket and return the value of iter prior to this call. The behavior is undefined unless iter refers to a valid (not yet erased) element in a bucket. Note that iter is invalidated when the underlying hash table is rehashed.

operator==

Same as the preceding overload.

operator==

Same as the preceding overload.

operator==

Return true if the specified lhs and the specified rhs iterators have the same value and false otherwise. Two iterators have the same value if they refer to the same element in the same hash table, or if both iterators are positioned after the end of a hash table bucket.

operator==

Same as the preceding overload.

Created with MrDocs