Realm
A distributed, event-based tasking library
Loading...
Searching...
No Matches
serialize.h File Reference
#include "realm/realm_config.h"
#include "realm/bytearray.h"
#include "realm/utils.h"
#include <stddef.h>
#include <vector>
#include <list>
#include <set>
#include <map>
#include <string>
#include <typeinfo>
#include "realm/serialize.inl"
Include dependency graph for serialize.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  is_copy_serializable
 
class  is_copy_serializable::inner
 
struct  is_copy_serializable::test< T >
 
class  Realm::Serialization::FixedBufferSerializer
 
class  Realm::Serialization::DynamicBufferSerializer
 
class  Realm::Serialization::ByteCountSerializer
 
class  Realm::Serialization::FixedBufferDeserializer
 
struct  Realm::Serialization::SerializationHelper< T, true >
 
struct  Realm::Serialization::SerializationHelper< T, false >
 
class  Realm::Serialization::PolymorphicSerdezHelper< T >
 
struct  Realm::Serialization::PolymorphicSerdezHelper< T >::SubclassMap
 
class  Realm::Serialization::PolymorphicSerdezIntfc< T >
 
class  Realm::Serialization::PolymorphicSerdezSubclass< T1, T2 >
 

Namespaces

namespace  Realm
 
namespace  Realm::Serialization
 

Macros

#define TYPE_IS_SERIALIZABLE(T)    void *operator,(const is_copy_serializable::inner &, const T &);
 
#define TEMPLATE_TYPE_IS_SERIALIZABLE(P, T)
 
#define TEMPLATE_TYPE_IS_SERIALIZABLE2(P1, P2, T1, T2)
 
#define TEMPLATE_TYPE_IS_SERIALIZABLE3(P1, P2, P3, T1, T2, T3)
 

Functions

template<typename T >
char operator, (const is_copy_serializable::inner &, const T &)
 
template<typename S , typename T >
bool Realm::Serialization::serdez (S &, const T &)
 
template<typename S , typename T >
bool Realm::Serialization::serialize (S &s, const T &t)
 
template<typename S , typename T >
bool Realm::Serialization::deserialize (S &s, T &t)
 
template<typename S , typename T , size_t N>
bool Realm::Serialization::serialize (S &s, T(&a)[N])
 
template<typename S , typename T , size_t N>
bool Realm::Serialization::deserialize (S &s, T(&a)[N])
 
template<typename S , typename T1 , typename T2 >
bool Realm::Serialization::serialize (S &s, const std::pair< T1, T2 > &p)
 
template<typename S , typename T1 , typename T2 >
bool Realm::Serialization::deserialize (S &s, std::pair< T1, T2 > &p)
 
template<typename S , typename T >
bool Realm::Serialization::serialize (S &s, const std::vector< T > &v)
 
template<typename S , typename T >
bool Realm::Serialization::deserialize (S &s, std::vector< T > &v)
 
template<typename S , typename T >
bool Realm::Serialization::serialize (S &s, const std::list< T > &l)
 
template<typename S , typename T >
bool Realm::Serialization::deserialize (S &s, std::list< T > &l)
 
template<typename S , typename T >
bool Realm::Serialization::serialize (S &s, const std::set< T > &ss)
 
template<typename S , typename T >
bool Realm::Serialization::deserialize (S &s, std::set< T > &ss)
 
template<typename S , typename T1 , typename T2 >
bool Realm::Serialization::serialize (S &s, const std::map< T1, T2 > &m)
 
template<typename S , typename T1 , typename T2 >
bool Realm::Serialization::deserialize (S &s, std::map< T1, T2 > &m)
 
template<typename S >
bool Realm::Serialization::serialize (S &s, const std::string &str)
 
template<typename S >
bool Realm::Serialization::deserialize (S &s, std::string &str)
 
template<typename S , typename T , size_t Extent>
bool Realm::Serialization::serialize (S &s, span< T, Extent > sp)
 
template<typename S , typename T , size_t Extent>
bool Realm::Serialization::deserialize (S &s, span< T, Extent > &sp)
 

Macro Definition Documentation

◆ TEMPLATE_TYPE_IS_SERIALIZABLE

#define TEMPLATE_TYPE_IS_SERIALIZABLE (   P,
 
)
Value:
template <P> \
void *operator,(const is_copy_serializable::inner &, const T &);
Definition serialize.h:82
char operator,(const is_copy_serializable::inner &, const T &)

◆ TEMPLATE_TYPE_IS_SERIALIZABLE2

#define TEMPLATE_TYPE_IS_SERIALIZABLE2 (   P1,
  P2,
  T1,
  T2 
)
Value:
template <P1, P2> \
void *operator,(const is_copy_serializable::inner &, const T1, T2 &);

◆ TEMPLATE_TYPE_IS_SERIALIZABLE3

#define TEMPLATE_TYPE_IS_SERIALIZABLE3 (   P1,
  P2,
  P3,
  T1,
  T2,
  T3 
)
Value:
template <P1, P2, P3> \
void *operator,(const is_copy_serializable::inner &, const T1, T2, T3 &);

◆ TYPE_IS_SERIALIZABLE

#define TYPE_IS_SERIALIZABLE (   T)     void *operator,(const is_copy_serializable::inner &, const T &);

Function Documentation

◆ operator,()

template<typename T >
char operator, ( const is_copy_serializable::inner ,
const T &   
)