26 struct recursive_serializable_specification;
28 template <
typename T,
typename Enabler =
void>
29 struct is_container_type_impl;
31 template <
typename T,
typename Enabler =
void>
32 struct is_container_default_serializable_impl;
35 struct container_specification_impl;
38 struct container_children_impl;
65 typename Specification,
71 #if MAX_GNUC_VERSION(4, 8, 0)
74 template <
typename T,
typename Enabler>
75 friend struct detail::is_container_type_impl;
77 template <
typename T,
typename Enabler>
78 friend struct detail::is_container_default_serializable_impl;
81 friend struct detail::container_specification_impl;
84 friend struct detail::container_children_impl;
88 using serializable_container_enabler = void;
89 using serializable_container_specification =
typename std::enable_if <is_pack_container <Specification>::value, Specification>::type;
90 using serializable_container_children =
typename std::enable_if <is_pack_container <Children>::value, Children>::type;
91 enum{ serializable_container_default = Default };
103 template <
typename T>
112 template <
typename T>
122 template <
typename T>
132 template <
typename T>
146 typename Specification,
168 typename Specification,
181 #include <framework/serializable/container_type.inl>