CatapultServer  v0.5.0.1 (Elephant)
catapult::deltaset::detail::BaseSetDualIteratorWrapper< TFindTraits, TSetTraits, TStorageIterator, TMemoryIterator, TFindResult > Class Template Reference

Public Member Functions

 BaseSetDualIteratorWrapper ()
 Creates an unset iterator. More...
 
 BaseSetDualIteratorWrapper (TStorageIterator &&storageIter)
 Creates an iterator around a storage iterator (storageIter). More...
 
 BaseSetDualIteratorWrapper (TMemoryIterator &&memoryIter)
 Creates an iterator around a memory iterator (memoryIter). More...
 
TFindResult get () const
 Gets the underlying value. More...
 

Private Types

enum  IteratorType { IteratorType::Unset, IteratorType::Storage, IteratorType::Memory }
 

Private Attributes

IteratorType m_iteratorType
 
TStorageIterator m_storageIter
 
TMemoryIterator m_memoryIter
 

Detailed Description

template<typename TFindTraits, typename TSetTraits, typename TStorageIterator, typename TMemoryIterator, typename TFindResult>
class catapult::deltaset::detail::BaseSetDualIteratorWrapper< TFindTraits, TSetTraits, TStorageIterator, TMemoryIterator, TFindResult >

Iterator that represents a find result from a base set that supports two types of container iterators.

Note
This is used for BaseSetDelta when storage and memory sets have different iterators.

Member Enumeration Documentation

◆ IteratorType

template<typename TFindTraits , typename TSetTraits , typename TStorageIterator , typename TMemoryIterator , typename TFindResult >
enum catapult::deltaset::detail::BaseSetDualIteratorWrapper::IteratorType
strongprivate
Enumerator
Unset 
Storage 
Memory 

Constructor & Destructor Documentation

◆ BaseSetDualIteratorWrapper() [1/3]

template<typename TFindTraits , typename TSetTraits , typename TStorageIterator , typename TMemoryIterator , typename TFindResult >
catapult::deltaset::detail::BaseSetDualIteratorWrapper< TFindTraits, TSetTraits, TStorageIterator, TMemoryIterator, TFindResult >::BaseSetDualIteratorWrapper ( )
inline

Creates an unset iterator.

◆ BaseSetDualIteratorWrapper() [2/3]

template<typename TFindTraits , typename TSetTraits , typename TStorageIterator , typename TMemoryIterator , typename TFindResult >
catapult::deltaset::detail::BaseSetDualIteratorWrapper< TFindTraits, TSetTraits, TStorageIterator, TMemoryIterator, TFindResult >::BaseSetDualIteratorWrapper ( TStorageIterator &&  storageIter)
inlineexplicit

Creates an iterator around a storage iterator (storageIter).

◆ BaseSetDualIteratorWrapper() [3/3]

template<typename TFindTraits , typename TSetTraits , typename TStorageIterator , typename TMemoryIterator , typename TFindResult >
catapult::deltaset::detail::BaseSetDualIteratorWrapper< TFindTraits, TSetTraits, TStorageIterator, TMemoryIterator, TFindResult >::BaseSetDualIteratorWrapper ( TMemoryIterator &&  memoryIter)
inlineexplicit

Creates an iterator around a memory iterator (memoryIter).

Member Function Documentation

◆ get()

template<typename TFindTraits , typename TSetTraits , typename TStorageIterator , typename TMemoryIterator , typename TFindResult >
TFindResult catapult::deltaset::detail::BaseSetDualIteratorWrapper< TFindTraits, TSetTraits, TStorageIterator, TMemoryIterator, TFindResult >::get ( ) const
inline

Gets the underlying value.

Member Data Documentation

◆ m_iteratorType

template<typename TFindTraits , typename TSetTraits , typename TStorageIterator , typename TMemoryIterator , typename TFindResult >
IteratorType catapult::deltaset::detail::BaseSetDualIteratorWrapper< TFindTraits, TSetTraits, TStorageIterator, TMemoryIterator, TFindResult >::m_iteratorType
private

◆ m_memoryIter

template<typename TFindTraits , typename TSetTraits , typename TStorageIterator , typename TMemoryIterator , typename TFindResult >
TMemoryIterator catapult::deltaset::detail::BaseSetDualIteratorWrapper< TFindTraits, TSetTraits, TStorageIterator, TMemoryIterator, TFindResult >::m_memoryIter
private

◆ m_storageIter

template<typename TFindTraits , typename TSetTraits , typename TStorageIterator , typename TMemoryIterator , typename TFindResult >
TStorageIterator catapult::deltaset::detail::BaseSetDualIteratorWrapper< TFindTraits, TSetTraits, TStorageIterator, TMemoryIterator, TFindResult >::m_storageIter
private

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