9#ifndef CLASSDESC_PACK_EPILOGUE_H
10#define CLASSDESC_PACK_EPILOGUE_H
12#include "pack-allCDs.h"
15#include "use_mbr_pointers.h"
16CLASSDESC_USE_OLDSTYLE_MEMBER_OBJECTS(pack)
17CLASSDESC_USE_OLDSTYLE_MEMBER_OBJECTS(unpack)
23#ifdef CLASSDESC_OBJECT_H
27 template <
class T,
class B>
31 void operator()(cd::pack_t& b,
const cd::string& d, U& a)
32 {pack(b,d,cd::base_cast<B>::cast(a));}
35 template <
class T,
class B>
39 void operator()(cd::unpack_t& b,
const cd::string& d, U& a)
40 {unpack(b,d,cd::base_cast<B>::cast(a));}
50 void operator()(cd::pack_t& buf,
const cd::string& desc,
const T& arg)
58 void operator()(cd::pack_t& buf,
const cd::string& desc,
const T& arg)
74#ifdef CLASSDESC_PACK_STL_H
129#ifdef CLASSDESC_POLYPACKBASE_H
131 public cd::NullDescriptor<cd::pack_t> {};
132 template <>
struct access_unpack<cd::PolyPackBase>:
133 public cd::NullDescriptor<cd::unpack_t> {};
140#ifdef CLASSDESC_POLYJSONBASE_H
162#ifdef CLASSDESC_FACTORY_H
163 template <
class T,
class U>
struct access_pack<
cd::Factory<T,U> >
165 void operator()(cd::pack_t& b,
const cd::string& d, cd::Factory<T,U>& a)
175 void operator()(cd::unpack_t& b,
const cd::string& d, cd::Factory<T,U>& a)
184#include "polyAccessPack.h"
185#include "pack_stream.h"
Contains access_* structs, and nothing else. These structs are used to gain access to private members...
Definition classdesc_access.h:20
Contains definitions related to classdesc functionality.
serialisation for standard containers
helper for constructing null descriptors
Definition classdesc.h:1106
class to allow access to private members
Definition classdesc_access.h:21
class to allow access to private members
Definition classdesc_access.h:22