namespace
dispatch
Namespaces
- namespace typeregistry
- namespace vrt
Classes
-
template<typename T>struct Allocator
-
template<typename SerializerT, typename T>struct BasicDispatcher
-
template<typename T>struct CleanType
- struct InPlaceTag
-
template<typename T>struct Reconstructor
- struct serialization_error
- struct SERIALIZE_CONSTRUCT_TAG
-
template<typename SerializerT, typename T, typename Dispatcher>struct SerializerDispatchByte
-
template<typename SerializerT, typename T, typename Dispatcher = BasicDispatcher<SerializerT, T>>struct SerializerDispatchNonByte
- struct Standard
- Standard traversals for sizing, packing and unpacking a class.
- struct Traverse
- Traverse a target recursively
T
with a traverser object (typically inheriting fromSerializer
).
Typedefs
-
template<typename SerializerT, typename T, typename Dispatcher = BasicDispatcher<SerializerT, T>>using SerializerDispatch = SerializerDispatchByte<SerializerT, T, Dispatcher>
Functions
-
template<typename T>auto cleanType(T* val) -> CleanType<T>::CleanT*
-
template<typename T, typename UserTraits>auto packBuffer(T& target, SerialSizeType size, BufferObtainFnType fn) -> buffer::
ImplReturnType -
template<typename Serializer, typename T>void serializeArray(Serializer& s, T* array, SerialSizeType const len)
-
template<typename T, typename UserTraits>auto serializeType(T& target, BufferObtainFnType fn = nullptr) -> buffer::
ImplReturnType -
template<typename T, typename UserTraits>auto deserializeType(SerialByteType* data, SerialByteType* allocBuf = nullptr) -> T*
-
template<typename T, typename UserTraits>void deserializeType(InPlaceTag, SerialByteType* data, T* t)
-
template<typename T>auto sizeType(T& t) -> std::size_t
-
template<typename T, typename TraverserT>auto withTypeIdx(TraverserT& t) -> TraverserT&
-
template<typename T, typename TraverserT>auto withMemUsed(TraverserT& t, SerialSizeType len) -> TraverserT&
-
template<typename TargetT, typename PackerT>void validatePackerBufferSize(PackerT const& p, SerialSizeType bufferSize)
Typedef documentation
template<typename SerializerT, typename T, typename Dispatcher = BasicDispatcher<SerializerT, T>>
using checkpoint:: dispatch:: SerializerDispatch = SerializerDispatchByte<SerializerT, T, Dispatcher>
Function documentation
template<typename T, typename UserTraits>
buffer:: ImplReturnType checkpoint:: dispatch:: packBuffer(T& target,
SerialSizeType size,
BufferObtainFnType fn)
template<typename Serializer, typename T>
void checkpoint:: dispatch:: serializeArray(Serializer& s,
T* array,
SerialSizeType const len)
template<typename T, typename UserTraits>
buffer:: ImplReturnType checkpoint:: dispatch:: serializeType(T& target,
BufferObtainFnType fn = nullptr)
template<typename T, typename UserTraits>
T* checkpoint:: dispatch:: deserializeType(SerialByteType* data,
SerialByteType* allocBuf = nullptr)
template<typename T, typename UserTraits>
void checkpoint:: dispatch:: deserializeType(InPlaceTag,
SerialByteType* data,
T* t)
template<typename T>
std::size_t checkpoint:: dispatch:: sizeType(T& t)
template<typename T, typename TraverserT>
TraverserT& checkpoint:: dispatch:: withTypeIdx(TraverserT& t)
template<typename T, typename TraverserT>
TraverserT& checkpoint:: dispatch:: withMemUsed(TraverserT& t,
SerialSizeType len)
template<typename TargetT, typename PackerT>
void checkpoint:: dispatch:: validatePackerBufferSize(PackerT const& p,
SerialSizeType bufferSize)