Mapper  0.9.0
API documentation
Public Types | Public Member Functions | List of all members
OcdEntityIndexIterator< V > Class Template Reference

A template class which provides a forward iterator for OCD entity indices. More...

#include <ocd_types.h>

Inheritance diagram for OcdEntityIndexIterator< V >:
Inheritance graph
[legend]
Collaboration diagram for OcdEntityIndexIterator< V >:
Collaboration graph
[legend]

Public Types

using value_type = V
 
using EntryType = typename V::EntryType
 
using IndexBlock = const Ocd::IndexBlock< EntryType >
 

Public Member Functions

 OcdEntityIndexIterator () noexcept=default
 
 OcdEntityIndexIterator (const OcdEntityIndexIterator &) noexcept=default
 
 OcdEntityIndexIterator (OcdEntityIndexIterator &&) noexcept=default
 
 OcdEntityIndexIterator (const QByteArray &byte_array, const IndexBlock *first_block)
 
OcdEntityIndexIteratoroperator= (const OcdEntityIndexIterator &) noexcept=default
 
OcdEntityIndexIteratoroperator= (OcdEntityIndexIterator &&) noexcept=default
 
OcdEntityIndexIteratoroperator++ ()
 
OcdEntityIndexIterator operator++ (int)
 
value_type operator* () const
 
bool operator== (const OcdEntityIndexIterator< V > &rhs) const
 
bool operator!= (const OcdEntityIndexIterator< V > &rhs) const
 

Detailed Description

template<class V>
class OcdEntityIndexIterator< V >

A template class which provides a forward iterator for OCD entity indices.

Dereferencing the iterator returns the index entry. The entity must be fetched via the OcdFile<F>::operator[].

As with regular STL iterator, dereferencing and incrementing must only be called when the iterator is dereferenceable or incrementable state, respectively.

Parameters
Vthe index value type

Member Typedef Documentation

◆ EntryType

template<class V >
using OcdEntityIndexIterator< V >::EntryType = typename V::EntryType

◆ IndexBlock

template<class V >
using OcdEntityIndexIterator< V >::IndexBlock = const Ocd::IndexBlock<EntryType>

◆ value_type

template<class V >
using OcdEntityIndexIterator< V >::value_type = V

Constructor & Destructor Documentation

◆ OcdEntityIndexIterator() [1/4]

template<class V >
OcdEntityIndexIterator< V >::OcdEntityIndexIterator ( )
defaultnoexcept

◆ OcdEntityIndexIterator() [2/4]

template<class V >
OcdEntityIndexIterator< V >::OcdEntityIndexIterator ( const OcdEntityIndexIterator< V > &  )
defaultnoexcept

◆ OcdEntityIndexIterator() [3/4]

template<class V >
OcdEntityIndexIterator< V >::OcdEntityIndexIterator ( OcdEntityIndexIterator< V > &&  )
defaultnoexcept

◆ OcdEntityIndexIterator() [4/4]

template<class V >
OcdEntityIndexIterator< V >::OcdEntityIndexIterator ( const QByteArray byte_array,
const IndexBlock first_block 
)

Member Function Documentation

◆ operator!=()

template<class V >
bool OcdEntityIndexIterator< V >::operator!= ( const OcdEntityIndexIterator< V > &  rhs) const

◆ operator*()

template<class V >
OcdEntityIndexIterator< V >::value_type OcdEntityIndexIterator< V >::operator* ( ) const

◆ operator++() [1/2]

template<class V >
OcdEntityIndexIterator< V > & OcdEntityIndexIterator< V >::operator++ ( )

◆ operator++() [2/2]

template<class V >
OcdEntityIndexIterator< V > OcdEntityIndexIterator< V >::operator++ ( int  )

◆ operator=() [1/2]

template<class V >
OcdEntityIndexIterator& OcdEntityIndexIterator< V >::operator= ( const OcdEntityIndexIterator< V > &  )
defaultnoexcept

◆ operator=() [2/2]

template<class V >
OcdEntityIndexIterator& OcdEntityIndexIterator< V >::operator= ( OcdEntityIndexIterator< V > &&  )
defaultnoexcept

◆ operator==()

template<class V >
bool OcdEntityIndexIterator< V >::operator== ( const OcdEntityIndexIterator< V > &  rhs) const

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