Standard‐conforming forward iterator over a single hash‐table bucket.

Synopsis

Declared in <bslstl_hashtablebucketiterator.h>

template<
    class VALUE_TYPE,
    class DIFFERENCE_TYPE>
class HashTableBucketIterator;

Description

This class template implements an in‐core value‐semantic type that is an standard‐conforming forward iterator (see section 24.2.5 [forward.iterators]of the C++11 standard) over a list of bslalg::BidirectionalLink objects referred to by a single bslalg::HashTableBucket object. A HashTableBucketIterator object provides access to values of the (template parameter) VALUE_TYPE, stored in a bucket of a hash table. The (template parameter) DIFFERENCE_TYPE determines the standard mandated difference_type of the iterator, without requiring access to the allocator‐traits for the node.

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 to this iterator.

bucket

Return the address of the hash table bucket referred to by this iterator.

node

Return the address of the node at which this iterator is positioned.

operator*

Return a reference to the element at which this iterator is positioned.

operator++

Move this iterator to the next element in the hash table bucket.

operator‐>

Return the address of the element at which this iterator is positioned.

Non-Member Functions

Name

Description

operator!=

Return true if the specified lhs and rhs do not have the same value.

operator!=

Return true if the specified lhs and rhs do not have the same value.

operator!=

Return true if the specified lhs and rhs do not have the same value.

operator!=

Return true if the specified lhs and rhs do not have the same value.

operator++

Move the specified iterator to the next element and return its prior value.

operator==

Return true if the specified lhs and rhs have the same value.

operator==

Return true if the specified lhs and rhs have the same value.

operator==

Return true if the specified lhs and rhs have the same value.

operator==

Return true if the specified lhs and rhs have the same value.

Created with MrDocs