mcrl2::utilities::unordered_set::unordered_set_iterator

Include file:

#include "mcrl2/utilities/unordered_set.h
class mcrl2::utilities::unordered_set::unordered_set_iterator

An iterator over all elements in the unordered set.

Private types

type mcrl2::utilities::unordered_set::unordered_set_iterator::bucket_it

typedef for typename std::vector< Bucket >::const_iterator

type mcrl2::utilities::unordered_set::unordered_set_iterator::key_it_type

typedef for typename Bucket::const_iterator

Public types

type mcrl2::utilities::unordered_set::unordered_set_iterator::difference_type

typedef for std::ptrdiff_t

type mcrl2::utilities::unordered_set::unordered_set_iterator::iterator_category

typedef for std::forward_iterator_tag

type mcrl2::utilities::unordered_set::unordered_set_iterator::pointer

typedef for typename std::conditional< Constant, const Key *, Key * >::type

type mcrl2::utilities::unordered_set::unordered_set_iterator::reference

typedef for typename std::conditional< Constant, const Key &, Key & >::type

type mcrl2::utilities::unordered_set::unordered_set_iterator::value_type

typedef for Key

Friends

friend class mcrl2::utilities::unordered_set::unordered_set_iterator::unordered_map

friend class mcrl2::utilities::unordered_set::unordered_set_iterator::unordered_set

Private attributes

bucket_it mcrl2::utilities::unordered_set::unordered_set_iterator::m_bucket_end
bucket_it mcrl2::utilities::unordered_set::unordered_set_iterator::m_bucket_it
key_it_type mcrl2::utilities::unordered_set::unordered_set_iterator::m_key_before_it
key_it_type mcrl2::utilities::unordered_set::unordered_set_iterator::m_key_it

Public member functions

operator unordered_set_iterator<Bucket, true>() const
bool operator!=(const unordered_set_iterator &other) const
reference operator*() const
unordered_set_iterator &operator++()
unordered_set_iterator operator++(int)
pointer operator->() const
bool operator==(const unordered_set_iterator &other) const
unordered_set_iterator() = default

Private member functions

bucket_it &get_bucket_it()

Returns: A reference to the bucket iterator.

void goto_next_bucket()

Iterate to the next non-empty bucket.

key_it_type &key_before_it()

Returns: A reference to the before key iterator.

key_it_type &key_it()

Returns: A reference to the key iterator.

operator unordered_set_iterator<Bucket, false>() const
unordered_set_iterator(bucket_it it)

Construct the end iterator.

unordered_set_iterator(bucket_it it, bucket_it end)

Construct the begin iterator (over all elements).

unordered_set_iterator(bucket_it it, bucket_it end, key_it_type before_it, key_it_type key)

Construct an iterator over all keys passed in this bucket and all remaining buckets.