18#ifndef INCLUDED_SERIALIZETEMPLATES
19#define INCLUDED_SERIALIZETEMPLATES
40template <
typename T,
typename SFINAE =
void>
43 template<
typename... Args>
45 template<
typename... Args>
50template <
typename T,
typename S,
typename... Args>
51void Serializer(S& serialize,
const char* name, Args&&... args)
57template <
typename T,
typename S,
typename... Args>
58void Serializer(S& serialize,
const char* name,
T&& value, Args&&... args)
65 template<
typename S,
class T>
66 using qualify = std::conditional_t<std::is_same_v<S, ISerializer&>,
const T&,
T&>;
void Serializer(S &serialize, const char *name, Args &&... args)
Definition: SerializeTemplates.h:51
Deserialization interface; see serialization overview.
Definition: IDeserializer.h:35
Serialization interface; see serialization overview.
Definition: ISerializer.h:121
Definition: SerializeTemplates.h:64
std::conditional_t< std::is_same_v< S, ISerializer & >, const T &, T & > qualify
Definition: SerializeTemplates.h:66
#define T(string_literal)
Definition: secure_crt.cpp:77
Definition: SerializeTemplates.h:42
void operator()(IDeserializer &serialize, const char *name, T &value, Args &&...)
void operator()(ISerializer &serialize, const char *name, T value, Args &&...)