indigoX
serialise.hpp File Reference
#include "fwd_declares.hpp"
#include <cereal/access.hpp>
#include <cereal/archives/json.hpp>
#include <cereal/archives/portable_binary.hpp>
#include <cereal/cereal.hpp>
#include <cereal/types/array.hpp>
#include <cereal/types/bitset.hpp>
#include <cereal/types/boost_dynamic_bitset.hpp>
#include <cereal/types/eastl_bitset.hpp>
#include <cereal/types/eigen.hpp>
#include <cereal/types/map.hpp>
#include <cereal/types/memory.hpp>
#include <cereal/types/utility.hpp>
#include <cereal/types/vector.hpp>
#include <type_traits>
+ Include dependency graph for serialise.hpp:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  typeless
 

Namespaces

 stdx
 

Macros

#define __cr_in   cereal::PortableBinaryInputArchive
 
#define __cr_out   cereal::PortableBinaryOutputArchive
 
#define __hr_in   cereal::JSONInputArchive
 
#define __hr_out   cereal::JSONOutputArchive
 
#define __ix_serialise(class_name, in_archive_t, out_archive_t)
 
#define __ix_serialise_construct(class_name, in_archive_t, out_archive_t)
 
#define __ix_serialise_split(class_name, in_archive_t, out_archive_t)
 
#define CEREAL_SERIALIZE_FUNCTION_NAME   serialise
 
#define INDIGOX_IS_HUMAN_READABLE(archive_t)   cereal::traits::is_text_archive<archive_t>::value
 
#define INDIGOX_IS_INPUT_ARCHIVE(archive_t)   std::is_base_of<cereal::detail::InputArchiveBase, archive_t>::value
 
#define INDIGOX_IS_OUTPUT_ARCHIVE(archive_t)   std::is_base_of<cereal::detail::OutputArchiveBase, archive_t>::value
 
#define INDIGOX_SERIAL_NVP(name, value)   cereal::make_nvp<Archive>(name, value)
 
#define INDIGOX_SERIALISE(class_name)
 
#define INDIGOX_SERIALISE_CONSTRUCT(class_name)
 
#define INDIGOX_SERIALISE_SPLIT(class_name)
 
#define INDIGOX_SERIALISE_VERSION(class_name, version)   CEREAL_CLASS_VERSION(class_name, version);
 

Macro Definition Documentation

◆ __cr_in

#define __cr_in   cereal::PortableBinaryInputArchive

◆ __cr_out

#define __cr_out   cereal::PortableBinaryOutputArchive

◆ __hr_in

#define __hr_in   cereal::JSONInputArchive

◆ __hr_out

#define __hr_out   cereal::JSONOutputArchive

◆ __ix_serialise

#define __ix_serialise (   class_name,
  in_archive_t,
  out_archive_t 
)
Value:
template void class_name::serialise<out_archive_t>(out_archive_t &, \
const uint32_t); \
template void class_name::serialise<in_archive_t>(in_archive_t &, \
const uint32_t);

◆ __ix_serialise_construct

#define __ix_serialise_construct (   class_name,
  in_archive_t,
  out_archive_t 
)
Value:
template void class_name::save<out_archive_t>(out_archive_t &, \
const uint32_t) const; \
template void class_name::load_and_construct<in_archive_t>( \
in_archive_t &, cereal::construct<class_name> &, const uint32_t);
Definition: common.hpp:20

◆ __ix_serialise_split

#define __ix_serialise_split (   class_name,
  in_archive_t,
  out_archive_t 
)
Value:
template void class_name::save<out_archive_t>(out_archive_t &, \
const uint32_t) const; \
template void class_name::load<in_archive_t>(in_archive_t &, const uint32_t);

◆ CEREAL_SERIALIZE_FUNCTION_NAME

#define CEREAL_SERIALIZE_FUNCTION_NAME   serialise

◆ INDIGOX_IS_HUMAN_READABLE

#define INDIGOX_IS_HUMAN_READABLE (   archive_t)    cereal::traits::is_text_archive<archive_t>::value

◆ INDIGOX_IS_INPUT_ARCHIVE

#define INDIGOX_IS_INPUT_ARCHIVE (   archive_t)    std::is_base_of<cereal::detail::InputArchiveBase, archive_t>::value

◆ INDIGOX_IS_OUTPUT_ARCHIVE

#define INDIGOX_IS_OUTPUT_ARCHIVE (   archive_t)    std::is_base_of<cereal::detail::OutputArchiveBase, archive_t>::value

◆ INDIGOX_SERIAL_NVP

#define INDIGOX_SERIAL_NVP (   name,
  value 
)    cereal::make_nvp<Archive>(name, value)

◆ INDIGOX_SERIALISE

#define INDIGOX_SERIALISE (   class_name)
Value:
__ix_serialise(class_name, __cr_in, __cr_out)
#define __cr_in
Definition: serialise.hpp:35
#define __ix_serialise(class_name, in_archive_t, out_archive_t)
Definition: serialise.hpp:37
#define __hr_in
Definition: serialise.hpp:33
#define __cr_out
Definition: serialise.hpp:34
#define __hr_out
Definition: serialise.hpp:32

◆ INDIGOX_SERIALISE_CONSTRUCT

#define INDIGOX_SERIALISE_CONSTRUCT (   class_name)
Value:
__ix_serialise_construct(class_name, __cr_in, __cr_out)
#define __cr_in
Definition: serialise.hpp:35
#define __ix_serialise_construct(class_name, in_archive_t, out_archive_t)
Definition: serialise.hpp:48
#define __hr_in
Definition: serialise.hpp:33
#define __cr_out
Definition: serialise.hpp:34
#define __hr_out
Definition: serialise.hpp:32

◆ INDIGOX_SERIALISE_SPLIT

#define INDIGOX_SERIALISE_SPLIT (   class_name)
Value:
__ix_serialise_split(class_name, __cr_in, __cr_out)
#define __cr_in
Definition: serialise.hpp:35
#define __ix_serialise_split(class_name, in_archive_t, out_archive_t)
Definition: serialise.hpp:43
#define __hr_in
Definition: serialise.hpp:33
#define __cr_out
Definition: serialise.hpp:34
#define __hr_out
Definition: serialise.hpp:32

◆ INDIGOX_SERIALISE_VERSION

#define INDIGOX_SERIALISE_VERSION (   class_name,
  version 
)    CEREAL_CLASS_VERSION(class_name, version);