Defines
mem_serialized_struct.hpp File Reference
#include <labust/preprocessor/class_adaptor.hpp>
#include <boost/serialization/level.hpp>
#include <boost/preprocessor/seq/for_each.hpp>
Include dependency graph for mem_serialized_struct.hpp:

Go to the source code of this file.

Defines

#define PP_LABUST_ADD_TO_BOOST_ARCHIVE(R, ATTRIBUTE_TUPEL_SIZE, ATTRIBUTE)   ar & object.BOOST_PP_TUPLE_ELEM(ATTRIBUTE_TUPEL_SIZE,1,ATTRIBUTE);
#define PP_LABUST_DEFINE_BOOST_SERIALIZED_STRUCT(NAMESPACE_SEQ, NAME, ATTRIBUTES)
#define PP_LABUST_DEFINE_BOOST_SERIALIZED_STRUCT_CLEAN(NAMESPACE_SEQ, NAME, ATTRIBUTES)
#define PP_LABUST_MAKE_BOOST_SERIALIZATOR(NAME, ATTRIBUTES)
#define PP_LABUST_MAKE_BOOST_SERIALIZATOR_CLEAN(NAME, ATTRIBUTES)
#define PP_LABUST_MAKE_INLINE_BOOST_SERIALIZATOR(NAME, ATTRIBUTES)
#define PP_LABUST_MAKE_INLINE_BOOST_SERIALIZATOR_CLEAN(NAME, ATTRIBUTES)

Define Documentation

#define PP_LABUST_ADD_TO_BOOST_ARCHIVE (   R,
  ATTRIBUTE_TUPEL_SIZE,
  ATTRIBUTE 
)    ar & object.BOOST_PP_TUPLE_ELEM(ATTRIBUTE_TUPEL_SIZE,1,ATTRIBUTE);

Definition at line 44 of file mem_serialized_struct.hpp.

#define PP_LABUST_DEFINE_BOOST_SERIALIZED_STRUCT (   NAMESPACE_SEQ,
  NAME,
  ATTRIBUTES 
)
Value:
PP_LABUST_NAMESPACE_DEFINITIONS_BEGIN((0)NAMESPACE_SEQ)\
                struct NAME\
                {\
                        PP_LABUST_MACRO_ON_ATTRIBUTES(PP_LABUST_ATTRIBUTE_EXPAND,ATTRIBUTES)\
                };\
                PP_LABUST_NAMESPACE_DEFINITIONS_END((0)NAMESPACE_SEQ)\
                PP_LABUST_MAKE_BOOST_SERIALIZATOR(PP_LABUST_NAMESPACE_DEFINITIONS_ENUM((0)NAMESPACE_SEQ)NAME,ATTRIBUTES)

Definition at line 72 of file mem_serialized_struct.hpp.

#define PP_LABUST_DEFINE_BOOST_SERIALIZED_STRUCT_CLEAN (   NAMESPACE_SEQ,
  NAME,
  ATTRIBUTES 
)
Value:
PP_LABUST_DEFINE_BOOST_SERIALIZED_STRUCT(NAMESPACE_SEQ, NAME, ATTRIBUTES)\
        BOOST_CLASS_IMPLEMENTATION(PP_LABUST_NAMESPACE_DEFINITIONS_ENUM((0)NAMESPACE_SEQ)NAME, boost::serialization::object_serializable)

Definition at line 81 of file mem_serialized_struct.hpp.

#define PP_LABUST_MAKE_BOOST_SERIALIZATOR (   NAME,
  ATTRIBUTES 
)
Value:
namespace boost { \
  namespace serialization { \
        template<class Archive>\
  void serialize(Archive & ar, NAME & object, const unsigned int version) \
  {\
                PP_LABUST_MACRO_ON_ATTRIBUTES(PP_LABUST_ADD_TO_BOOST_ARCHIVE,ATTRIBUTES)\
  }}}

Definition at line 55 of file mem_serialized_struct.hpp.

#define PP_LABUST_MAKE_BOOST_SERIALIZATOR_CLEAN (   NAME,
  ATTRIBUTES 
)
Value:
PP_LABUST_MAKE_BOOST_SERIALIZATOR(NAME, ATTRIBUTES) \
        BOOST_CLASS_IMPLEMENTATION(NAME, boost::serialization::object_serializable)

Definition at line 68 of file mem_serialized_struct.hpp.

#define PP_LABUST_MAKE_INLINE_BOOST_SERIALIZATOR (   NAME,
  ATTRIBUTES 
)
Value:
namespace boost { namespace serialization{\\
        template<class Archive>\
  inline void serialize(Archive & ar, NAME & g, const unsigned int version) \
  {\
    BOOST_PP_SEQ_FOR_EACH_R(1, PP_LABUST_ADD_TO_BOOST_ARCHIVE, object, STRUCT_SEQ)\
  }}}\

Definition at line 47 of file mem_serialized_struct.hpp.

#define PP_LABUST_MAKE_INLINE_BOOST_SERIALIZATOR_CLEAN (   NAME,
  ATTRIBUTES 
)
Value:
PP_LABUST_MAKE_INLINE_BOOST_SERIALIZATOR(NAME, ATTRIBUTES) \
        BOOST_CLASS_IMPLEMENTATION(NAME, boost::serialization::object_serializable)

Definition at line 64 of file mem_serialized_struct.hpp.



snippets
Author(s): Gyula Nagy
autogenerated on Fri Aug 28 2015 11:22:33