Jlm
Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
jlm::util::HashSet< ItemType, HashFunctor >::ItemConstIterator Class Referencefinal

#include <HashSet.hpp>

Public Types

using iterator_category = std::forward_iterator_tag
 
using value_type = ItemType
 
using difference_type = std::ptrdiff_t
 
using pointer = ItemType *
 
using reference = ItemType &
 

Public Member Functions

ItemType * Item () const noexcept
 
const ItemType & operator* () const
 
ItemType * operator-> () const
 
ItemConstIteratoroperator++ ()
 
ItemConstIterator operator++ (int)
 
bool operator== (const ItemConstIterator &other) const
 
bool operator!= (const ItemConstIterator &other) const
 

Private Member Functions

 ItemConstIterator (const typename InternalSet::const_iterator &it)
 

Private Attributes

friend HashSet
 
InternalSet::const_iterator It_
 

Detailed Description

template<typename ItemType, typename HashFunctor = Hash<ItemType>>
class jlm::util::HashSet< ItemType, HashFunctor >::ItemConstIterator

Definition at line 28 of file HashSet.hpp.

Member Typedef Documentation

◆ difference_type

template<typename ItemType , typename HashFunctor = Hash<ItemType>>
using jlm::util::HashSet< ItemType, HashFunctor >::ItemConstIterator::difference_type = std::ptrdiff_t

Definition at line 33 of file HashSet.hpp.

◆ iterator_category

template<typename ItemType , typename HashFunctor = Hash<ItemType>>
using jlm::util::HashSet< ItemType, HashFunctor >::ItemConstIterator::iterator_category = std::forward_iterator_tag

Definition at line 31 of file HashSet.hpp.

◆ pointer

template<typename ItemType , typename HashFunctor = Hash<ItemType>>
using jlm::util::HashSet< ItemType, HashFunctor >::ItemConstIterator::pointer = ItemType *

Definition at line 34 of file HashSet.hpp.

◆ reference

template<typename ItemType , typename HashFunctor = Hash<ItemType>>
using jlm::util::HashSet< ItemType, HashFunctor >::ItemConstIterator::reference = ItemType &

Definition at line 35 of file HashSet.hpp.

◆ value_type

template<typename ItemType , typename HashFunctor = Hash<ItemType>>
using jlm::util::HashSet< ItemType, HashFunctor >::ItemConstIterator::value_type = ItemType

Definition at line 32 of file HashSet.hpp.

Constructor & Destructor Documentation

◆ ItemConstIterator()

template<typename ItemType , typename HashFunctor = Hash<ItemType>>
jlm::util::HashSet< ItemType, HashFunctor >::ItemConstIterator::ItemConstIterator ( const typename InternalSet::const_iterator &  it)
inlineexplicitprivate

Definition at line 40 of file HashSet.hpp.

Member Function Documentation

◆ Item()

template<typename ItemType , typename HashFunctor = Hash<ItemType>>
ItemType* jlm::util::HashSet< ItemType, HashFunctor >::ItemConstIterator::Item ( ) const
inlinenoexcept

Definition at line 46 of file HashSet.hpp.

◆ operator!=()

template<typename ItemType , typename HashFunctor = Hash<ItemType>>
bool jlm::util::HashSet< ItemType, HashFunctor >::ItemConstIterator::operator!= ( const ItemConstIterator other) const
inline

Definition at line 85 of file HashSet.hpp.

◆ operator*()

template<typename ItemType , typename HashFunctor = Hash<ItemType>>
const ItemType& jlm::util::HashSet< ItemType, HashFunctor >::ItemConstIterator::operator* ( ) const
inline

Definition at line 52 of file HashSet.hpp.

◆ operator++() [1/2]

template<typename ItemType , typename HashFunctor = Hash<ItemType>>
ItemConstIterator& jlm::util::HashSet< ItemType, HashFunctor >::ItemConstIterator::operator++ ( )
inline

Definition at line 64 of file HashSet.hpp.

◆ operator++() [2/2]

template<typename ItemType , typename HashFunctor = Hash<ItemType>>
ItemConstIterator jlm::util::HashSet< ItemType, HashFunctor >::ItemConstIterator::operator++ ( int  )
inline

Definition at line 71 of file HashSet.hpp.

◆ operator->()

template<typename ItemType , typename HashFunctor = Hash<ItemType>>
ItemType* jlm::util::HashSet< ItemType, HashFunctor >::ItemConstIterator::operator-> ( ) const
inline

Definition at line 58 of file HashSet.hpp.

◆ operator==()

template<typename ItemType , typename HashFunctor = Hash<ItemType>>
bool jlm::util::HashSet< ItemType, HashFunctor >::ItemConstIterator::operator== ( const ItemConstIterator other) const
inline

Definition at line 79 of file HashSet.hpp.

Member Data Documentation

◆ HashSet

template<typename ItemType , typename HashFunctor = Hash<ItemType>>
friend jlm::util::HashSet< ItemType, HashFunctor >::ItemConstIterator::HashSet
private

Definition at line 38 of file HashSet.hpp.

◆ It_

template<typename ItemType , typename HashFunctor = Hash<ItemType>>
InternalSet::const_iterator jlm::util::HashSet< ItemType, HashFunctor >::ItemConstIterator::It_
private

Definition at line 91 of file HashSet.hpp.


The documentation for this class was generated from the following file: