15 #include <sst/core/serialization/serializer.h>
24 namespace Serialization {
31 template <
class T,
class Enable =
void>
43 static_assert(std::is_fundamental<T>::value,
"Trying to serialize an object that is not serializable.");
44 static_assert(!std::is_fundamental<T>::value,
"Trying to serialize an object that is not serializable.");
52 class serialize <T, typename
std::enable_if<std::is_fundamental<T>::value || std::is_enum<T>::value>::type> {
91 class serialize<T*,
typename std::enable_if<std::is_fundamental<T>::value || std::is_enum<T>::value>::type> {
93 inline void operator()(T*& t,
serializer& ser){
95 case serializer::SIZER:
98 case serializer::PACK:
101 case serializer::UNPACK:
112 template <
class U,
class V>
115 inline void operator()(std::pair<U,V>& t,
serializer& ser){
131 #include <sst/core/serialization/serialize_array.h>
132 #include <sst/core/serialization/serialize_deque.h>
133 #include <sst/core/serialization/serialize_list.h>
134 #include <sst/core/serialization/serialize_map.h>
135 #include <sst/core/serialization/serialize_set.h>
136 #include <sst/core/serialization/serialize_vector.h>
137 #include <sst/core/serialization/serialize_string.h>
139 #endif // SERIALIZE_H
This class is basically a wrapper for objects to declare the order in which their members should be s...
Definition: serializer.h:35
Base serialize class.
Definition: serialize.h:32