|
cereal_fwd
Fork of cereal library adding archive supporting forward compatibility
|
Internal helper functionality. More...
#include <type_traits>#include <cstdint>#include <utility>#include <memory>#include <unordered_map>#include <stdexcept>#include <cereal/macros.hpp>#include <cereal/details/static_object.hpp>Go to the source code of this file.
Classes | |
| struct | cereal::Exception |
| An exception class thrown when things go wrong at runtime. More... | |
| struct | cereal::detail::NameValuePairCore |
| Traits struct for NVPs. More... | |
| class | cereal::NameValuePair< T > |
| For holding name value pairs. More... | |
| struct | cereal::BinaryData< T > |
| A wrapper around data that can be serialized in a binary fashion. More... | |
| class | cereal::detail::OutputArchiveBase |
| class | cereal::detail::InputArchiveBase |
| struct | cereal::detail::polymorphic_serialization_support< Archive, T > |
| class | cereal::SizeTag< T > |
| A wrapper around size metadata. More... | |
| class | cereal::OmittedFieldTag |
| Tag used to indicate that field is ommited from the archive. More... | |
| struct | cereal::MapItem< Key, Value > |
| A wrapper around a key and value for serializing data into maps. More... | |
| class | cereal::detail::VersionIdTag< T > |
| A wrapper around polymorphic id. More... | |
| class | cereal::detail::PolymorphicIdTag< T > |
| A wrapper around polymorphic id. More... | |
| class | cereal::detail::PolymorphicKeyTag< T > |
| A wrapper around polymorphic key. More... | |
| class | cereal::detail::ObjectIdTag< T > |
| A wrapper around object id. More... | |
| class | cereal::detail::PointerValidityTag< T > |
| A wrapper around pointer validity marker. More... | |
| struct | cereal::detail::Version< T, BindingTag > |
| Version information class. More... | |
| struct | cereal::detail::Versions |
| Holds all registered version information. More... | |
Macros | |
| #define | CEREAL_NVP_(name, value) ::cereal::make_nvp<Archive>(name, value) |
| Convenience for creating a templated NVP. More... | |
Typedefs | |
| using | cereal::size_type = uint64_t |
| The size type used by cereal. More... | |
Enumerations | |
| enum | FieldSerialized { YES, NO, INTERNAL } |
Functions | |
| template<class KeyType , class ValueType > | |
| MapItem< KeyType, ValueType > | cereal::make_map_item (KeyType &&key, ValueType &&value) |
| Create a MapItem so that human readable archives will group keys and values together. | |
| template<class T > | |
| PolymorphicIdTag< T > | cereal::detail::make_polymorphic_id_tag (T &&polymorphic_id) |
| template<class T > | |
| PolymorphicKeyTag< T > | cereal::detail::make_polymorphic_key_tag (T &&polymorphic_key) |
| template<class T > | |
| ObjectIdTag< T > | cereal::detail::make_object_id_tag (T &&object_id) |
| template<class T > | |
| PointerValidityTag< T > | cereal::detail::make_pointer_validity_tag (T &&valid) |
Internal helper functionality.
| #define CEREAL_NVP_ | ( | name, | |
| value | |||
| ) | ::cereal::make_nvp<Archive>(name, value) |
Convenience for creating a templated NVP.
For use in internal generic typing functions which have an Archive type declared
| using cereal::size_type = typedef uint64_t |
The size type used by cereal.
To ensure compatability between 32, 64, etc bit machines, we need to use a fixed size type instead of size_t, which may vary from machine to machine.
1.8.13