momo  3.9
momo::internal::DataRow< TColumnList > Class Template Reference

#include <DataRow.h>

Public Types

typedef TColumnList ColumnList
 
typedef ColumnList::Raw Raw
 
template<typename Item >
using Column = typename ColumnList::template Column< Item >
 

Public Member Functions

 DataRow ()=delete
 
 DataRow (DataRow &&row) noexcept
 
 DataRow (const DataRow &)=delete
 
 ~DataRow () noexcept
 
DataRowoperator= (DataRow &&row) noexcept
 
DataRowoperator= (const DataRow &)=delete
 
void Swap (DataRow &row) noexcept
 
const ColumnListGetColumnList () const noexcept
 
template<typename Item >
const Item & GetByOffset (size_t offset) const
 
template<typename Item >
Item & GetByOffset (size_t offset)
 
template<typename Item >
MOMO_FORCEINLINE const Item & Get (const Column< Item > &column) const
 
template<typename Item >
MOMO_FORCEINLINE Item & Get (const Column< Item > &column)
 
template<typename Item >
MOMO_FORCEINLINE const Item & operator[] (const Column< Item > &column) const
 
template<typename Item >
MOMO_FORCEINLINE Item & operator[] (const Column< Item > &column)
 
template<typename PtrVisitor >
void VisitPointers (const PtrVisitor &ptrVisitor) const
 
template<typename PtrVisitor >
void VisitPointers (const PtrVisitor &ptrVisitor)
 
template<typename RefVisitor >
void VisitReferences (const RefVisitor &refVisitor) const
 
template<typename RefVisitor >
void VisitReferences (const RefVisitor &refVisitor)
 
const RawGetRaw () const noexcept
 
RawGetRaw () noexcept
 
const Rawoperator-> () const noexcept
 
Rawoperator-> () noexcept
 

Protected Types

typedef std::atomic< void * > FreeRaws
 

Protected Member Functions

 DataRow (const ColumnList *columnList, Raw *raw, FreeRaws *freeRaws) noexcept
 
RawptGetRaw () const noexcept
 
RawptExtractRaw () noexcept
 

Member Typedef Documentation

◆ Column

template<typename TColumnList >
template<typename Item >
using momo::internal::DataRow< TColumnList >::Column = typename ColumnList::template Column<Item>

◆ ColumnList

template<typename TColumnList >
typedef TColumnList momo::internal::DataRow< TColumnList >::ColumnList

◆ FreeRaws

template<typename TColumnList >
typedef std::atomic<void*> momo::internal::DataRow< TColumnList >::FreeRaws
protected

◆ Raw

template<typename TColumnList >
typedef ColumnList::Raw momo::internal::DataRow< TColumnList >::Raw

Constructor & Destructor Documentation

◆ DataRow() [1/4]

template<typename TColumnList >
momo::internal::DataRow< TColumnList >::DataRow ( )
delete

◆ DataRow() [2/4]

template<typename TColumnList >
momo::internal::DataRow< TColumnList >::DataRow ( DataRow< TColumnList > &&  row)
inlinenoexcept

◆ DataRow() [3/4]

template<typename TColumnList >
momo::internal::DataRow< TColumnList >::DataRow ( const DataRow< TColumnList > &  )
delete

◆ ~DataRow()

template<typename TColumnList >
momo::internal::DataRow< TColumnList >::~DataRow ( )
inlinenoexcept

◆ DataRow() [4/4]

template<typename TColumnList >
momo::internal::DataRow< TColumnList >::DataRow ( const ColumnList columnList,
Raw raw,
FreeRaws freeRaws 
)
inlineexplicitprotectednoexcept

Member Function Documentation

◆ Get() [1/2]

template<typename TColumnList >
template<typename Item >
MOMO_FORCEINLINE Item& momo::internal::DataRow< TColumnList >::Get ( const Column< Item > &  column)
inline

◆ Get() [2/2]

template<typename TColumnList >
template<typename Item >
MOMO_FORCEINLINE const Item& momo::internal::DataRow< TColumnList >::Get ( const Column< Item > &  column) const
inline

◆ GetByOffset() [1/2]

template<typename TColumnList >
template<typename Item >
Item& momo::internal::DataRow< TColumnList >::GetByOffset ( size_t  offset)
inline

◆ GetByOffset() [2/2]

template<typename TColumnList >
template<typename Item >
const Item& momo::internal::DataRow< TColumnList >::GetByOffset ( size_t  offset) const
inline

◆ GetColumnList()

template<typename TColumnList >
const ColumnList& momo::internal::DataRow< TColumnList >::GetColumnList ( ) const
inlinenoexcept

◆ GetRaw() [1/2]

template<typename TColumnList >
const Raw* momo::internal::DataRow< TColumnList >::GetRaw ( ) const
inlinenoexcept

◆ GetRaw() [2/2]

template<typename TColumnList >
Raw* momo::internal::DataRow< TColumnList >::GetRaw ( )
inlinenoexcept

◆ operator->() [1/2]

template<typename TColumnList >
const Raw* momo::internal::DataRow< TColumnList >::operator-> ( ) const
inlinenoexcept

◆ operator->() [2/2]

template<typename TColumnList >
Raw* momo::internal::DataRow< TColumnList >::operator-> ( )
inlinenoexcept

◆ operator=() [1/2]

template<typename TColumnList >
DataRow& momo::internal::DataRow< TColumnList >::operator= ( const DataRow< TColumnList > &  )
delete

◆ operator=() [2/2]

template<typename TColumnList >
DataRow& momo::internal::DataRow< TColumnList >::operator= ( DataRow< TColumnList > &&  row)
inlinenoexcept

◆ operator[]() [1/2]

template<typename TColumnList >
template<typename Item >
MOMO_FORCEINLINE Item& momo::internal::DataRow< TColumnList >::operator[] ( const Column< Item > &  column)
inline

◆ operator[]() [2/2]

template<typename TColumnList >
template<typename Item >
MOMO_FORCEINLINE const Item& momo::internal::DataRow< TColumnList >::operator[] ( const Column< Item > &  column) const
inline

◆ ptExtractRaw()

template<typename TColumnList >
Raw* momo::internal::DataRow< TColumnList >::ptExtractRaw ( )
inlineprotectednoexcept

◆ ptGetRaw()

template<typename TColumnList >
Raw* momo::internal::DataRow< TColumnList >::ptGetRaw ( ) const
inlineprotectednoexcept

◆ Swap()

template<typename TColumnList >
void momo::internal::DataRow< TColumnList >::Swap ( DataRow< TColumnList > &  row)
inlinenoexcept

◆ VisitPointers() [1/2]

template<typename TColumnList >
template<typename PtrVisitor >
void momo::internal::DataRow< TColumnList >::VisitPointers ( const PtrVisitor &  ptrVisitor)
inline

◆ VisitPointers() [2/2]

template<typename TColumnList >
template<typename PtrVisitor >
void momo::internal::DataRow< TColumnList >::VisitPointers ( const PtrVisitor &  ptrVisitor) const
inline

◆ VisitReferences() [1/2]

template<typename TColumnList >
template<typename RefVisitor >
void momo::internal::DataRow< TColumnList >::VisitReferences ( const RefVisitor &  refVisitor)
inline

◆ VisitReferences() [2/2]

template<typename TColumnList >
template<typename RefVisitor >
void momo::internal::DataRow< TColumnList >::VisitReferences ( const RefVisitor &  refVisitor) const
inline

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