24 template <
typename T,
typename Enabler =
void>
25 struct is_object_type_impl;
27 template <
typename T,
typename Enabler =
void>
28 struct is_object_default_serializable_impl;
30 template <
typename T,
typename Name>
31 struct object_base_impl;
34 struct object_names_impl;
37 struct object_specification_impl;
39 template <
typename T,
template <
typename>
class Path,
typename Enabler =
void>
40 struct extract_values_impl;
64 typename Specification,
70 class serializable_implementation;
91 template <
typename... Args>
107 template <
typename T>
116 template <
typename T>
126 template <
typename T,
typename Name>
127 using object_base =
typename detail::object_base_impl <T, Name>::type;
136 template <
typename T>
146 template <
typename T>
176 template <
typename Pack,
template <
typename>
class Path>
184 typename Specification,
186 typename Constructed,
199 return dispatch_read <Specification> (std::forward <Args> (args)...);
207 typename Specification,
209 typename Constructed,
213 serializable_implementation <
222 return dispatch_write <Specification> (std::forward <Args> (args)...);
234 template <
typename Derived,
typename... Specification>
237 alias <Specification...>,
252 template <
typename Derived,
typename... Specification>
255 alias <Specification...>,
263 #include <framework/serializable/serializable.inl>