HybridMap< K, V, SMALL, LARGE, THRESHOLD, REVERSE_THRESHOLD >::EntryIteratorBase< CONSTITERATOR > Class Template Reference

#include <hybridmap.h>

Inheritance diagram for HybridMap< K, V, SMALL, LARGE, THRESHOLD, REVERSE_THRESHOLD >::EntryIteratorBase< CONSTITERATOR >:

Public Types

using  Super = typename std::conditional< CONSTITERATOR, IteratorBase < true >, NonConstIteratorBase >::type
using  CollectionType = typename ConstIf < HybridMap , CONSTITERATOR >::type
using  KeyType = K
using  MappedType = typename ConstIf < V, CONSTITERATOR >::type
using  Small = decltype(*std::declval< typename Super::SmallIterator >())
using  Large = decltype(*std::declval< typename Super::LargeIterator >())
using  ValueType = typename std::conditional< SAME_TYPE , typename CommonLValue < Small , Small , Large >::type, Pair < K, V > >::type

公共成员函数

  EntryIteratorBase ()
  EntryIteratorBase (const typename Super::SmallIterator & src )
  EntryIteratorBase (const typename Super::LargeIterator & src )
  EntryIteratorBase (const EntryIteratorBase & src )
  EntryIteratorBase ( CollectionType &m, Int s=0)
ValueType   operator* () const

静态公共属性

static const Bool   SAME_TYPE

Protected Member Functions

void  operator-> ()

Member Typedef Documentation

◆  Super

using Super = typename std::conditional<CONSTITERATOR, IteratorBase <true>, NonConstIteratorBase >::type

◆  CollectionType

using CollectionType = typename ConstIf < HybridMap , CONSTITERATOR>::type

◆  KeyType

using KeyType = K

◆  MappedType

using MappedType = typename ConstIf <V, CONSTITERATOR>::type

◆  Small

using Small = decltype(*std::declval<typename Super::SmallIterator>())

◆  Large

using Large = decltype(*std::declval<typename Super::LargeIterator>())

◆  ValueType

using ValueType = typename std::conditional< SAME_TYPE , typename CommonLValue < Small , Small , Large >::type, Pair <K, V> >::type

构造函数 & 析构函数文档编制

◆  EntryIteratorBase() [1/5]

EntryIteratorBase ( )

◆  EntryIteratorBase() [2/5]

EntryIteratorBase ( const typename Super::SmallIterator &  src )
explicit

◆  EntryIteratorBase() [3/5]

EntryIteratorBase ( const typename Super::LargeIterator &  src )
explicit

◆  EntryIteratorBase() [4/5]

EntryIteratorBase ( const EntryIteratorBase < CONSTITERATOR > &  src )

◆  EntryIteratorBase() [5/5]

EntryIteratorBase ( CollectionType m ,
Int   s = 0  
)
explicit

成员函数文档编制

◆  operator*()

ValueType operator* ( ) const

◆  operator->()

void operator-> ( )
protected

Member Data Documentation

◆  SAME_TYPE

const Bool SAME_TYPE static