openMSX
Public Types | Public Member Functions | Friends | List of all members
hash_set< Value, Extractor, Hasher, Equal >::Iter< HashSet, IValue > Class Template Reference

#include <hash_set.hh>

Public Types

using value_type = IValue
 
using difference_type = int
 
using pointer = IValue *
 
using reference = IValue &
 
using iterator_category = std::forward_iterator_tag
 

Public Member Functions

 Iter ()=default
 
template<typename HashSet2 , typename IValue2 >
 Iter (const Iter< HashSet2, IValue2 > &other)
 
template<typename HashSet2 , typename IValue2 >
Iteroperator= (const Iter< HashSet2, IValue2 > &rhs)
 
bool operator== (const Iter &rhs) const
 
bool operator!= (const Iter &rhs) const
 
Iteroperator++ ()
 
Iter operator++ (int)
 
IValue & operator* () const
 
IValue * operator-> () const
 

Friends

class hash_set
 

Detailed Description

template<typename Value, typename Extractor = hash_set_impl::Identity, typename Hasher = std::hash<hash_set_impl::ExtractedType<Value, Extractor>>, typename Equal = std::equal_to<>>
template<typename HashSet, typename IValue>
class hash_set< Value, Extractor, Hasher, Equal >::Iter< HashSet, IValue >

Definition at line 271 of file hash_set.hh.

Member Typedef Documentation

◆ difference_type

template<typename Value, typename Extractor = hash_set_impl::Identity, typename Hasher = std::hash<hash_set_impl::ExtractedType<Value, Extractor>>, typename Equal = std::equal_to<>>
template<typename HashSet, typename IValue>
using hash_set< Value, Extractor, Hasher, Equal >::Iter< HashSet, IValue >::difference_type = int

Definition at line 274 of file hash_set.hh.

◆ iterator_category

template<typename Value, typename Extractor = hash_set_impl::Identity, typename Hasher = std::hash<hash_set_impl::ExtractedType<Value, Extractor>>, typename Equal = std::equal_to<>>
template<typename HashSet, typename IValue>
using hash_set< Value, Extractor, Hasher, Equal >::Iter< HashSet, IValue >::iterator_category = std::forward_iterator_tag

Definition at line 277 of file hash_set.hh.

◆ pointer

template<typename Value, typename Extractor = hash_set_impl::Identity, typename Hasher = std::hash<hash_set_impl::ExtractedType<Value, Extractor>>, typename Equal = std::equal_to<>>
template<typename HashSet, typename IValue>
using hash_set< Value, Extractor, Hasher, Equal >::Iter< HashSet, IValue >::pointer = IValue*

Definition at line 275 of file hash_set.hh.

◆ reference

template<typename Value, typename Extractor = hash_set_impl::Identity, typename Hasher = std::hash<hash_set_impl::ExtractedType<Value, Extractor>>, typename Equal = std::equal_to<>>
template<typename HashSet, typename IValue>
using hash_set< Value, Extractor, Hasher, Equal >::Iter< HashSet, IValue >::reference = IValue&

Definition at line 276 of file hash_set.hh.

◆ value_type

template<typename Value, typename Extractor = hash_set_impl::Identity, typename Hasher = std::hash<hash_set_impl::ExtractedType<Value, Extractor>>, typename Equal = std::equal_to<>>
template<typename HashSet, typename IValue>
using hash_set< Value, Extractor, Hasher, Equal >::Iter< HashSet, IValue >::value_type = IValue

Definition at line 273 of file hash_set.hh.

Constructor & Destructor Documentation

◆ Iter() [1/2]

template<typename Value, typename Extractor = hash_set_impl::Identity, typename Hasher = std::hash<hash_set_impl::ExtractedType<Value, Extractor>>, typename Equal = std::equal_to<>>
template<typename HashSet, typename IValue>
hash_set< Value, Extractor, Hasher, Equal >::Iter< HashSet, IValue >::Iter ( )
default

◆ Iter() [2/2]

template<typename Value, typename Extractor = hash_set_impl::Identity, typename Hasher = std::hash<hash_set_impl::ExtractedType<Value, Extractor>>, typename Equal = std::equal_to<>>
template<typename HashSet, typename IValue>
template<typename HashSet2 , typename IValue2 >
hash_set< Value, Extractor, Hasher, Equal >::Iter< HashSet, IValue >::Iter ( const Iter< HashSet2, IValue2 > &  other)
inlineexplicit

Definition at line 282 of file hash_set.hh.

Member Function Documentation

◆ operator!=()

template<typename Value, typename Extractor = hash_set_impl::Identity, typename Hasher = std::hash<hash_set_impl::ExtractedType<Value, Extractor>>, typename Equal = std::equal_to<>>
template<typename HashSet, typename IValue>
bool hash_set< Value, Extractor, Hasher, Equal >::Iter< HashSet, IValue >::operator!= ( const Iter< HashSet, IValue > &  rhs) const
inline

Definition at line 296 of file hash_set.hh.

◆ operator*()

template<typename Value, typename Extractor = hash_set_impl::Identity, typename Hasher = std::hash<hash_set_impl::ExtractedType<Value, Extractor>>, typename Equal = std::equal_to<>>
template<typename HashSet, typename IValue>
IValue& hash_set< Value, Extractor, Hasher, Equal >::Iter< HashSet, IValue >::operator* ( ) const
inline

Definition at line 318 of file hash_set.hh.

◆ operator++() [1/2]

template<typename Value, typename Extractor = hash_set_impl::Identity, typename Hasher = std::hash<hash_set_impl::ExtractedType<Value, Extractor>>, typename Equal = std::equal_to<>>
template<typename HashSet, typename IValue>
Iter& hash_set< Value, Extractor, Hasher, Equal >::Iter< HashSet, IValue >::operator++ ( )
inline

Definition at line 300 of file hash_set.hh.

◆ operator++() [2/2]

template<typename Value, typename Extractor = hash_set_impl::Identity, typename Hasher = std::hash<hash_set_impl::ExtractedType<Value, Extractor>>, typename Equal = std::equal_to<>>
template<typename HashSet, typename IValue>
Iter hash_set< Value, Extractor, Hasher, Equal >::Iter< HashSet, IValue >::operator++ ( int  )
inline

Definition at line 312 of file hash_set.hh.

◆ operator->()

template<typename Value, typename Extractor = hash_set_impl::Identity, typename Hasher = std::hash<hash_set_impl::ExtractedType<Value, Extractor>>, typename Equal = std::equal_to<>>
template<typename HashSet, typename IValue>
IValue* hash_set< Value, Extractor, Hasher, Equal >::Iter< HashSet, IValue >::operator-> ( ) const
inline

Definition at line 321 of file hash_set.hh.

◆ operator=()

template<typename Value, typename Extractor = hash_set_impl::Identity, typename Hasher = std::hash<hash_set_impl::ExtractedType<Value, Extractor>>, typename Equal = std::equal_to<>>
template<typename HashSet, typename IValue>
template<typename HashSet2 , typename IValue2 >
Iter& hash_set< Value, Extractor, Hasher, Equal >::Iter< HashSet, IValue >::operator= ( const Iter< HashSet2, IValue2 > &  rhs)
inline

Definition at line 286 of file hash_set.hh.

◆ operator==()

template<typename Value, typename Extractor = hash_set_impl::Identity, typename Hasher = std::hash<hash_set_impl::ExtractedType<Value, Extractor>>, typename Equal = std::equal_to<>>
template<typename HashSet, typename IValue>
bool hash_set< Value, Extractor, Hasher, Equal >::Iter< HashSet, IValue >::operator== ( const Iter< HashSet, IValue > &  rhs) const
inline

Definition at line 292 of file hash_set.hh.

Friends And Related Function Documentation

◆ hash_set

template<typename Value, typename Extractor = hash_set_impl::Identity, typename Hasher = std::hash<hash_set_impl::ExtractedType<Value, Extractor>>, typename Equal = std::equal_to<>>
template<typename HashSet, typename IValue>
friend class hash_set
friend

Definition at line 326 of file hash_set.hh.


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