12 #ifndef SST_CORE_SERIALIZATION_IMPL_SERIALIZE_TUPLE_H 13 #define SST_CORE_SERIALIZATION_IMPL_SERIALIZE_TUPLE_H 15 #ifndef SST_INCLUDING_SERIALIZE_H 17 "The header file sst/core/serialization/impl/serialize_tuple.h should not be directly included as it is not part of the stable public API. The file is included in sst/core/serialization/serialize.h" 20 #include "sst/core/serialization/serializer.h" 23 #include <type_traits> 30 std::enable_if_t<is_same_type_template_v<T, std::tuple> || is_same_type_template_v<T, std::pair>>>
32 void operator()(T& t,
serializer& ser, ser_opt_t options)
35 ser_opt_t opt = SerOption::is_set(options, SerOption::as_ptr_elem) ? SerOption::as_ptr : SerOption::none;
36 std::apply([&](
auto&... e) { ((SST_SER(e, opt)), ...); }, t);
39 SST_FRIEND_SERIALIZE();
44 #endif // SST_CORE_SERIALIZATION_IMPL_SERIALIZE_TUPLE_H This class is basically a wrapper for objects to declare the order in which their members should be s...
Definition: serializer.h:42
Base serialize class.
Definition: serialize.h:113