Symphony Of Empires
|
#include <cstddef>
#include <cstdint>
#include <cstring>
#include <exception>
#include <numeric>
#include <string>
#include <vector>
#include <memory>
#include <optional>
#include <type_traits>
#include <bitset>
#include <limits>
#include <concepts>
#include <glm/glm.hpp>
#include "eng3d/utils.hpp"
#include "eng3d/string.hpp"
#include "eng3d/rectangle.hpp"
#include "eng3d/freelist.hpp"
Go to the source code of this file.
Classes | |
class | Eng3D::Deser::Exception |
The purpouse of the serializer is to serialize objects onto a byte stream that can be transfered onto the disk or over the network. Should the object have any pointers - they would need to be converted to indexes accordingly for proper transmission. More... | |
struct | Eng3D::Deser::Archive |
Base class that serves as archiver, stores (in memory) the data required for serialization/deserialization. More... | |
struct | Eng3D::Deser::CondConstType< true, T > |
struct | Eng3D::Deser::CondConstType< false, T > |
struct | Eng3D::Deser::Serializer< T > |
A serializer (base class) which can be used to serialize objects and create per-object optimized classes. More... | |
struct | Eng3D::Deser::SerializerMemcpy< T > |
A serializer optimized to memcpy directly the element into the byte stream use only when the object can be copied without modification (i.e a class full of ints) The elements must have a fixed size for this to work. More... | |
struct | Eng3D::Deser::Serializer< T > |
Non-contigous serializer for STL containers This serializer class works primarly with containers whose memory is contiguous. More... | |
struct | Eng3D::Deser::Serializer< bool > |
struct | Eng3D::Deser::Serializer<::std::pair< T, U > > |
Pair serializers. More... | |
struct | Eng3D::Deser::SerializerBitset< T, N > |
struct | Eng3D::Deser::Serializer<::std::bitset< bits > > |
struct | Eng3D::Deser::Serializer< Eng3D::StringRef > |
struct | Eng3D::Deser::Serializer< Eng3D::Rectangle > |
struct | Eng3D::Deser::Serializer< std::optional< T > > |
struct | Eng3D::Deser::Serializer< Eng3D::Freelist< T > > |
Namespaces | |
Eng3D | |
Eng3D::Deser | |
Functions | |
template<bool is_serialize, typename T > | |
void | Eng3D::Deser::deser_dynamic (Eng3D::Deser::Archive &ar, T &obj) |
Template generic (de)-serializer. More... | |
template<bool is_serialize = true, typename T > | |
void | Eng3D::Deser::deser_dynamic (Eng3D::Deser::Archive &ar, const T &obj) |
template<typename T > | |
void | Eng3D::Deser::serialize (Eng3D::Deser::Archive &ar, const T &obj) |
template<typename T > | |
void | Eng3D::Deser::serialize (Eng3D::Deser::Archive &ar, T &obj) |
template<typename T > | |
void | Eng3D::Deser::deserialize (Eng3D::Deser::Archive &ar, T &obj) |
Variables | |
template<typename T > | |
concept | Eng3D::Deser::SerializerScalar = std::is_integral_v<T> || std::is_floating_point_v<T> |
template<typename T > | |
concept | Eng3D::Deser::SerializerContainer |