TrinityCore
UF::MutableFieldReference< T, PublicSet > Struct Template Reference

#include <UpdateField.h>

Public Member Functions

 MutableFieldReference (T &value)
 
template<typename V , int32 BlockBit, uint32 Bit, typename U = T>
std::enable_if_t< std::is_base_of_v< HasChangesMaskTag, U >, std::conditional_t< std::is_base_of_v< IsUpdateFieldStructureTag, V >, MutableFieldReference< V, PublicSet >, std::conditional_t< std::is_base_of_v< IsUpdateFieldHolderTag, V >, MutableNestedFieldReference< V, PublicSet >, std::conditional_t< PublicSet, UpdateFieldPublicSetter< V >, UpdateFieldSetter< V > > > > > ModifyValue (UpdateField< V, BlockBit, Bit >(T::*field))
 
template<typename V , std::size_t Size, uint32 Bit, uint32 FirstElementBit, typename U = T>
std::enable_if_t< std::is_base_of_v< HasChangesMaskTag, U >, std::conditional_t< std::is_base_of_v< IsUpdateFieldStructureTag, V >, MutableFieldReference< V, PublicSet >, std::conditional_t< std::is_base_of_v< IsUpdateFieldHolderTag, V >, MutableNestedFieldReference< V, PublicSet >, std::conditional_t< PublicSet, UpdateFieldPublicSetter< V >, UpdateFieldSetter< V > > > > > ModifyValue (UpdateFieldArray< V, Size, Bit, FirstElementBit >(T::*field), uint32 index)
 
template<typename V , int32 BlockBit, uint32 Bit, typename U = T>
std::enable_if_t< std::is_base_of_v< HasChangesMaskTag, U >, DynamicUpdateFieldSetter< V > > ModifyValue (DynamicUpdateField< V, BlockBit, Bit >(T::*field))
 
template<typename V , int32 BlockBit, uint32 Bit, typename U = T>
std::enable_if_t< std::is_base_of_v< HasChangesMaskTag, U >, std::conditional_t< std::is_base_of_v< IsUpdateFieldStructureTag, V >, MutableFieldReference< V, PublicSet >, std::conditional_t< std::is_base_of_v< IsUpdateFieldHolderTag, V >, MutableNestedFieldReference< V, PublicSet >, std::conditional_t< PublicSet, UpdateFieldPublicSetter< V >, UpdateFieldSetter< V > > > > > ModifyValue (DynamicUpdateField< V, BlockBit, Bit >(T::*field), uint32 index)
 
template<typename V , int32 BlockBit, uint32 Bit, typename U = T>
std::enable_if_t< std::is_base_of_v< HasChangesMaskTag, U >, OptionalUpdateFieldSetter< V > > ModifyValue (OptionalUpdateField< V, BlockBit, Bit >(T::*field))
 
template<typename V , int32 BlockBit, uint32 Bit, typename U = T>
std::enable_if_t< std::is_base_of_v< HasChangesMaskTag, U >, std::conditional_t< std::is_base_of_v< IsUpdateFieldStructureTag, V >, MutableFieldReference< V, PublicSet >, std::conditional_t< std::is_base_of_v< IsUpdateFieldHolderTag, V >, MutableNestedFieldReference< V, PublicSet >, std::conditional_t< PublicSet, UpdateFieldPublicSetter< V >, UpdateFieldSetter< V > > > > > ModifyValue (OptionalUpdateField< V, BlockBit, Bit >(T::*field), uint32)
 
template<typename V , typename U = T>
std::enable_if_t<!std::is_base_of_v< HasChangesMaskTag, U > &&!std::is_array_v< V >, std::conditional_t< PublicSet, UpdateFieldPublicSetter< V >, UpdateFieldSetter< V > > > ModifyValue (V(T::*field))
 
template<typename V , std::size_t Size, typename U = T>
std::enable_if_t<!std::is_base_of_v< HasChangesMaskTag, U >, std::conditional_t< PublicSet, UpdateFieldPublicSetter< V >, UpdateFieldSetter< V > > > ModifyValue (V(T::*field)[Size], uint32 index)
 

Private Attributes

T & _value
 

Detailed Description

template<typename T, bool PublicSet>
struct UF::MutableFieldReference< T, PublicSet >

Definition at line 249 of file UpdateField.h.

Constructor & Destructor Documentation

◆ MutableFieldReference()

template<typename T , bool PublicSet>
UF::MutableFieldReference< T, PublicSet >::MutableFieldReference ( T &  value)
inline

Definition at line 251 of file UpdateField.h.

Member Function Documentation

◆ ModifyValue() [1/8]

template<typename T , bool PublicSet>
template<typename V , int32 BlockBit, uint32 Bit, typename U = T>
std::enable_if_t< std::is_base_of_v< HasChangesMaskTag, U >, DynamicUpdateFieldSetter< V > > UF::MutableFieldReference< T, PublicSet >::ModifyValue ( DynamicUpdateField< V, BlockBit, Bit >T::*  field)
inline

Definition at line 291 of file UpdateField.h.

◆ ModifyValue() [2/8]

template<typename T , bool PublicSet>
template<typename V , int32 BlockBit, uint32 Bit, typename U = T>
std::enable_if_t< std::is_base_of_v< HasChangesMaskTag, U >, std::conditional_t< std::is_base_of_v< IsUpdateFieldStructureTag, V >, MutableFieldReference< V, PublicSet >, std::conditional_t< std::is_base_of_v< IsUpdateFieldHolderTag, V >, MutableNestedFieldReference< V, PublicSet >, std::conditional_t< PublicSet, UpdateFieldPublicSetter< V >, UpdateFieldSetter< V > > > > > UF::MutableFieldReference< T, PublicSet >::ModifyValue ( DynamicUpdateField< V, BlockBit, Bit >T::*  field,
uint32  index 
)
inline

Definition at line 307 of file UpdateField.h.

◆ ModifyValue() [3/8]

template<typename T , bool PublicSet>
template<typename V , int32 BlockBit, uint32 Bit, typename U = T>
std::enable_if_t< std::is_base_of_v< HasChangesMaskTag, U >, OptionalUpdateFieldSetter< V > > UF::MutableFieldReference< T, PublicSet >::ModifyValue ( OptionalUpdateField< V, BlockBit, Bit >T::*  field)
inline

Definition at line 326 of file UpdateField.h.

◆ ModifyValue() [4/8]

template<typename T , bool PublicSet>
template<typename V , int32 BlockBit, uint32 Bit, typename U = T>
std::enable_if_t< std::is_base_of_v< HasChangesMaskTag, U >, std::conditional_t< std::is_base_of_v< IsUpdateFieldStructureTag, V >, MutableFieldReference< V, PublicSet >, std::conditional_t< std::is_base_of_v< IsUpdateFieldHolderTag, V >, MutableNestedFieldReference< V, PublicSet >, std::conditional_t< PublicSet, UpdateFieldPublicSetter< V >, UpdateFieldSetter< V > > > > > UF::MutableFieldReference< T, PublicSet >::ModifyValue ( OptionalUpdateField< V, BlockBit, Bit >T::*  field,
uint32   
)
inline

Definition at line 342 of file UpdateField.h.

◆ ModifyValue() [5/8]

template<typename T , bool PublicSet>
template<typename V , int32 BlockBit, uint32 Bit, typename U = T>
std::enable_if_t< std::is_base_of_v< HasChangesMaskTag, U >, std::conditional_t< std::is_base_of_v< IsUpdateFieldStructureTag, V >, MutableFieldReference< V, PublicSet >, std::conditional_t< std::is_base_of_v< IsUpdateFieldHolderTag, V >, MutableNestedFieldReference< V, PublicSet >, std::conditional_t< PublicSet, UpdateFieldPublicSetter< V >, UpdateFieldSetter< V > > > > > UF::MutableFieldReference< T, PublicSet >::ModifyValue ( UpdateField< V, BlockBit, Bit >T::*  field)
inline

Definition at line 262 of file UpdateField.h.

+ Here is the caller graph for this function:

◆ ModifyValue() [6/8]

template<typename T , bool PublicSet>
template<typename V , std::size_t Size, uint32 Bit, uint32 FirstElementBit, typename U = T>
std::enable_if_t< std::is_base_of_v< HasChangesMaskTag, U >, std::conditional_t< std::is_base_of_v< IsUpdateFieldStructureTag, V >, MutableFieldReference< V, PublicSet >, std::conditional_t< std::is_base_of_v< IsUpdateFieldHolderTag, V >, MutableNestedFieldReference< V, PublicSet >, std::conditional_t< PublicSet, UpdateFieldPublicSetter< V >, UpdateFieldSetter< V > > > > > UF::MutableFieldReference< T, PublicSet >::ModifyValue ( UpdateFieldArray< V, Size, Bit, FirstElementBit >T::*  field,
uint32  index 
)
inline

Definition at line 278 of file UpdateField.h.

◆ ModifyValue() [7/8]

template<typename T , bool PublicSet>
template<typename V , typename U = T>
std::enable_if_t<!std::is_base_of_v< HasChangesMaskTag, U > &&!std::is_array_v< V >, std::conditional_t< PublicSet, UpdateFieldPublicSetter< V >, UpdateFieldSetter< V > > > UF::MutableFieldReference< T, PublicSet >::ModifyValue ( VT::*  field)
inline

Definition at line 357 of file UpdateField.h.

◆ ModifyValue() [8/8]

template<typename T , bool PublicSet>
template<typename V , std::size_t Size, typename U = T>
std::enable_if_t<!std::is_base_of_v< HasChangesMaskTag, U >, std::conditional_t< PublicSet, UpdateFieldPublicSetter< V >, UpdateFieldSetter< V > > > UF::MutableFieldReference< T, PublicSet >::ModifyValue ( V(T::*)  field[Size],
uint32  index 
)
inline

Definition at line 365 of file UpdateField.h.

Member Data Documentation

◆ _value

template<typename T , bool PublicSet>
T& UF::MutableFieldReference< T, PublicSet >::_value
private

Definition at line 371 of file UpdateField.h.


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