Low-Level Abstraction of Memory Access
llama::mapping::internal::FieldAccessCountReference< Value, Ref, Count > Struct Template Reference

#include <FieldAccessCount.hpp>

+ Inheritance diagram for llama::mapping::internal::FieldAccessCountReference< Value, Ref, Count >:
+ Collaboration diagram for llama::mapping::internal::FieldAccessCountReference< Value, Ref, Count >:

Public Types

using value_type = Value
 

Public Member Functions

template<typename RefFwd >
constexpr FieldAccessCountReference (RefFwd &&r, AccessCounts< Count > *hits)
 
 FieldAccessCountReference (const FieldAccessCountReference &)=default
 
 FieldAccessCountReference (FieldAccessCountReference &&) noexcept=default
 
auto operator= (FieldAccessCountReference &&ref) noexcept -> FieldAccessCountReference &=default
 
 ~FieldAccessCountReference ()=default
 
auto operator= (const FieldAccessCountReference &ref) -> FieldAccessCountReference &
 
auto operator= (value_type value) -> FieldAccessCountReference &
 
 operator value_type () const
 
- Public Member Functions inherited from llama::ProxyRefOpMixin< FieldAccessCountReference< Value, Ref, Count >, Value >
constexpr auto operator+= (const Value &rhs) -> FieldAccessCountReference< Value, Ref, Count > &
 
constexpr auto operator-= (const Value &rhs) -> FieldAccessCountReference< Value, Ref, Count > &
 
constexpr auto operator*= (const Value &rhs) -> FieldAccessCountReference< Value, Ref, Count > &
 
constexpr auto operator/= (const Value &rhs) -> FieldAccessCountReference< Value, Ref, Count > &
 
constexpr auto operator%= (const Value &rhs) -> FieldAccessCountReference< Value, Ref, Count > &
 
constexpr auto operator<<= (const Value &rhs) -> FieldAccessCountReference< Value, Ref, Count > &
 
constexpr auto operator>>= (const Value &rhs) -> FieldAccessCountReference< Value, Ref, Count > &
 
constexpr auto operator&= (const Value &rhs) -> FieldAccessCountReference< Value, Ref, Count > &
 
constexpr auto operator|= (const Value &rhs) -> FieldAccessCountReference< Value, Ref, Count > &
 
constexpr auto operator^= (const Value &rhs) -> FieldAccessCountReference< Value, Ref, Count > &
 
constexpr auto operator++ () -> FieldAccessCountReference< Value, Ref, Count > &
 
constexpr auto operator++ (int) -> Value
 
constexpr auto operator-- () -> FieldAccessCountReference< Value, Ref, Count > &
 
constexpr auto operator-- (int) -> Value
 

Detailed Description

template<typename Value, typename Ref, typename Count>
struct llama::mapping::internal::FieldAccessCountReference< Value, Ref, Count >

Definition at line 30 of file FieldAccessCount.hpp.

Member Typedef Documentation

◆ value_type

template<typename Value , typename Ref , typename Count >
using llama::mapping::internal::FieldAccessCountReference< Value, Ref, Count >::value_type = Value

Definition at line 32 of file FieldAccessCount.hpp.

Constructor & Destructor Documentation

◆ FieldAccessCountReference() [1/3]

template<typename Value , typename Ref , typename Count >
template<typename RefFwd >
constexpr llama::mapping::internal::FieldAccessCountReference< Value, Ref, Count >::FieldAccessCountReference ( RefFwd &&  r,
AccessCounts< Count > *  hits 
)
inlineconstexpr

Definition at line 35 of file FieldAccessCount.hpp.

◆ FieldAccessCountReference() [2/3]

template<typename Value , typename Ref , typename Count >
llama::mapping::internal::FieldAccessCountReference< Value, Ref, Count >::FieldAccessCountReference ( const FieldAccessCountReference< Value, Ref, Count > &  )
default

◆ FieldAccessCountReference() [3/3]

template<typename Value , typename Ref , typename Count >
llama::mapping::internal::FieldAccessCountReference< Value, Ref, Count >::FieldAccessCountReference ( FieldAccessCountReference< Value, Ref, Count > &&  )
defaultnoexcept

◆ ~FieldAccessCountReference()

template<typename Value , typename Ref , typename Count >
llama::mapping::internal::FieldAccessCountReference< Value, Ref, Count >::~FieldAccessCountReference ( )
default

Member Function Documentation

◆ operator value_type()

template<typename Value , typename Ref , typename Count >
llama::mapping::internal::FieldAccessCountReference< Value, Ref, Count >::operator value_type ( ) const
inline

Definition at line 65 of file FieldAccessCount.hpp.

◆ operator=() [1/3]

template<typename Value , typename Ref , typename Count >
auto llama::mapping::internal::FieldAccessCountReference< Value, Ref, Count >::operator= ( const FieldAccessCountReference< Value, Ref, Count > &  ref) -> FieldAccessCountReference&
inline

Definition at line 47 of file FieldAccessCount.hpp.

◆ operator=() [2/3]

template<typename Value , typename Ref , typename Count >
auto llama::mapping::internal::FieldAccessCountReference< Value, Ref, Count >::operator= ( FieldAccessCountReference< Value, Ref, Count > &&  ref) -> FieldAccessCountReference &=default
defaultnoexcept

◆ operator=() [3/3]

template<typename Value , typename Ref , typename Count >
auto llama::mapping::internal::FieldAccessCountReference< Value, Ref, Count >::operator= ( value_type  value) -> FieldAccessCountReference&
inline

Definition at line 57 of file FieldAccessCount.hpp.


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