25#ifndef TIMEMORY_OPERATIONS_TYPES_SERIALIZATION_CPP_
26#define TIMEMORY_OPERATIONS_TYPES_SERIALIZATION_CPP_ 1
28#if !defined(TIMEMORY_OPERATIONS_TYPES_SERIALIZATION_HPP_)
31# include "timemory/tpls/cereal/archives.hpp"
42 cereal::MinimalJSONOutputArchive& ar,
43 const unsigned int version, ...)
45 impl(obj, ar, version);
50serialization<Tp, true>::operator()(
const Tp& obj, cereal::MinimalJSONOutputArchive& ar,
51 const unsigned int version, ...)
const
53 impl(obj, ar, version);
58serialization<Tp, true>::operator()(cereal::MinimalJSONOutputArchive& ar, metadata,
66serialization<Tp, true>::operator()(cereal::MinimalJSONOutputArchive& ar,
67 const basic_tree_vector_type& data, ...)
const
74serialization<Tp, true>::operator()(cereal::MinimalJSONOutputArchive& ar,
75 const std::vector<basic_tree_vector_type>& data,
83serialization<Tp, true>::operator()(cereal::MinimalJSONOutputArchive& ar,
84 const basic_tree_map_type& data, ...)
const
91serialization<Tp, true>::operator()(cereal::MinimalJSONOutputArchive& ar,
92 const result_type& data, ...)
const
99serialization<Tp, true>::operator()(cereal::MinimalJSONOutputArchive& ar,
100 const distrib_type& data, ...)
const
105template <
typename Tp>
107 const unsigned int version, ...)
109 impl(obj, ar, version);
112template <
typename Tp>
114serialization<Tp, true>::operator()(
const Tp& obj, cereal::PrettyJSONOutputArchive& ar,
115 const unsigned int version, ...)
const
117 impl(obj, ar, version);
120template <
typename Tp>
122serialization<Tp, true>::operator()(cereal::PrettyJSONOutputArchive& ar, metadata,
125 impl(ar, metadata{});
128template <
typename Tp>
130serialization<Tp, true>::operator()(cereal::PrettyJSONOutputArchive& ar,
131 const basic_tree_vector_type& data, ...)
const
136template <
typename Tp>
138serialization<Tp, true>::operator()(cereal::PrettyJSONOutputArchive& ar,
139 const std::vector<basic_tree_vector_type>& data,
145template <
typename Tp>
147serialization<Tp, true>::operator()(cereal::PrettyJSONOutputArchive& ar,
148 const basic_tree_map_type& data, ...)
const
153template <
typename Tp>
155serialization<Tp, true>::operator()(cereal::PrettyJSONOutputArchive& ar,
156 const result_type& data, ...)
const
161template <
typename Tp>
163serialization<Tp, true>::operator()(cereal::PrettyJSONOutputArchive& ar,
164 const distrib_type& data, ...)
const
169template <
typename Tp>
171serialization<Tp, true>::operator()(cereal::JSONInputArchive& ar,
172 basic_tree_vector_type& data, ...)
const
177template <
typename Tp>
179serialization<Tp, true>::operator()(cereal::JSONInputArchive& ar,
180 std::vector<basic_tree_vector_type>& data, ...)
const
185template <
typename Tp>
187serialization<Tp, true>::operator()(cereal::JSONInputArchive& ar, result_type& data,
193template <
typename Tp>
195serialization<Tp, true>::operator()(cereal::JSONInputArchive& ar, distrib_type& data,
serialization(Args &&... args)