framework
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
List of all members
framework::serializable::container_type< Specification, Children, Default > Struct Template Reference

#include <framework/serializable/container_type.hpp>

Detailed Description

template<typename Specification, typename Children, bool Default = true>
struct framework::serializable::container_type< Specification, Children, Default >

Provides a common interface used to define the types required to properly interpret a container type. A container provides two lists of child types - Specification, or a formal list of child types, and Children or a logical list of child types. This division is useful in processing a specification - implementation details may be hidden in Specification to remove them from consideration when comparing two types, printing the fields present in an object, and so on. See the documentation in serializable for additional information on how this division is used in practice in the construction of an object.

The default specification provided for this type processes each specification in Specification's pack_container in the order it appears. Derived types may suppress this default by setting Default to false, forcing the generation of a compile time error if an appropriate read or write overload is not present.

Template Parameters
Specificationpack_container specifying the formal children of the container
Childrenpack_container specifying the logical children of the container
Defaultflag enabling/disabling default serialization of the container

The documentation for this struct was generated from the following file: