file
dispatch.h
Namespaces
- namespace checkpoint
- namespace checkpoint::dispatch
Classes
- struct checkpoint::dispatch::InPlaceTag
- struct checkpoint::dispatch::Traverse
- Traverse a target recursively
T
with a traverser object (typically inheriting fromSerializer
). - struct checkpoint::dispatch::Standard
- Standard traversals for sizing, packing and unpacking a class.
Typedefs
- using BufferObtainFnType = std::function<SerialByteType*(SerialSizeType size)>
Functions
-
template<typename Serializer, typename T>auto operator|(Serializer& s, T& target) -> Serializer&
-
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