Low-Level Abstraction of Memory Access
llama::mapping::Bytesplit< TArrayExtents, TRecordDim, InnerMapping >::Reference< RC, BlobArray > Struct Template Reference

#include <Bytesplit.hpp>

+ Inheritance diagram for llama::mapping::Bytesplit< TArrayExtents, TRecordDim, InnerMapping >::Reference< RC, BlobArray >:
+ Collaboration diagram for llama::mapping::Bytesplit< TArrayExtents, TRecordDim, InnerMapping >::Reference< RC, BlobArray >:

Public Types

using value_type = GetType< TRecordDim, RC >
 

Public Member Functions

constexpr Reference (const Inner &innerMapping, ArrayIndex ai, BlobArray &blobs)
 
 Reference (const Reference &)=default
 
constexpr auto operator= (const Reference &other) -> Reference &
 
constexpr operator value_type () const
 
constexpr auto operator= (value_type v) -> Reference &
 
- Public Member Functions inherited from llama::ProxyRefOpMixin< Reference< RC, BlobArray >, GetType< TRecordDim, RC > >
constexpr auto operator+= (const GetType< TRecordDim, RC > &rhs) -> Reference< RC, BlobArray > &
 
constexpr auto operator-= (const GetType< TRecordDim, RC > &rhs) -> Reference< RC, BlobArray > &
 
constexpr auto operator*= (const GetType< TRecordDim, RC > &rhs) -> Reference< RC, BlobArray > &
 
constexpr auto operator/= (const GetType< TRecordDim, RC > &rhs) -> Reference< RC, BlobArray > &
 
constexpr auto operator%= (const GetType< TRecordDim, RC > &rhs) -> Reference< RC, BlobArray > &
 
constexpr auto operator<<= (const GetType< TRecordDim, RC > &rhs) -> Reference< RC, BlobArray > &
 
constexpr auto operator>>= (const GetType< TRecordDim, RC > &rhs) -> Reference< RC, BlobArray > &
 
constexpr auto operator&= (const GetType< TRecordDim, RC > &rhs) -> Reference< RC, BlobArray > &
 
constexpr auto operator|= (const GetType< TRecordDim, RC > &rhs) -> Reference< RC, BlobArray > &
 
constexpr auto operator^= (const GetType< TRecordDim, RC > &rhs) -> Reference< RC, BlobArray > &
 
constexpr auto operator++ () -> Reference< RC, BlobArray > &
 
constexpr auto operator++ (int) -> GetType< TRecordDim, RC >
 
constexpr auto operator-- () -> Reference< RC, BlobArray > &
 
constexpr auto operator-- (int) -> GetType< TRecordDim, RC >
 

Detailed Description

template<typename TArrayExtents, typename TRecordDim, template< typename, typename > typename InnerMapping>
template<typename RC, typename BlobArray>
struct llama::mapping::Bytesplit< TArrayExtents, TRecordDim, InnerMapping >::Reference< RC, BlobArray >

Definition at line 58 of file Bytesplit.hpp.

Member Typedef Documentation

◆ value_type

template<typename TArrayExtents , typename TRecordDim , template< typename, typename > typename InnerMapping>
template<typename RC , typename BlobArray >
using llama::mapping::Bytesplit< TArrayExtents, TRecordDim, InnerMapping >::Reference< RC, BlobArray >::value_type = GetType<TRecordDim, RC>

Definition at line 66 of file Bytesplit.hpp.

Constructor & Destructor Documentation

◆ Reference() [1/2]

template<typename TArrayExtents , typename TRecordDim , template< typename, typename > typename InnerMapping>
template<typename RC , typename BlobArray >
constexpr llama::mapping::Bytesplit< TArrayExtents, TRecordDim, InnerMapping >::Reference< RC, BlobArray >::Reference ( const Inner innerMapping,
ArrayIndex  ai,
BlobArray &  blobs 
)
inlineconstexpr

Definition at line 68 of file Bytesplit.hpp.

◆ Reference() [2/2]

template<typename TArrayExtents , typename TRecordDim , template< typename, typename > typename InnerMapping>
template<typename RC , typename BlobArray >
llama::mapping::Bytesplit< TArrayExtents, TRecordDim, InnerMapping >::Reference< RC, BlobArray >::Reference ( const Reference< RC, BlobArray > &  )
default

Member Function Documentation

◆ operator value_type()

template<typename TArrayExtents , typename TRecordDim , template< typename, typename > typename InnerMapping>
template<typename RC , typename BlobArray >
constexpr llama::mapping::Bytesplit< TArrayExtents, TRecordDim, InnerMapping >::Reference< RC, BlobArray >::operator value_type ( ) const
inlineconstexpr

Definition at line 85 of file Bytesplit.hpp.

◆ operator=() [1/2]

template<typename TArrayExtents , typename TRecordDim , template< typename, typename > typename InnerMapping>
template<typename RC , typename BlobArray >
constexpr auto llama::mapping::Bytesplit< TArrayExtents, TRecordDim, InnerMapping >::Reference< RC, BlobArray >::operator= ( const Reference< RC, BlobArray > &  other) -> Reference&
inlineconstexpr

Definition at line 78 of file Bytesplit.hpp.

◆ operator=() [2/2]

template<typename TArrayExtents , typename TRecordDim , template< typename, typename > typename InnerMapping>
template<typename RC , typename BlobArray >
constexpr auto llama::mapping::Bytesplit< TArrayExtents, TRecordDim, InnerMapping >::Reference< RC, BlobArray >::operator= ( value_type  v) -> Reference&
inlineconstexpr

Definition at line 105 of file Bytesplit.hpp.


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