cereal
A C++11 library for serialization
 All Classes Files Functions Variables Typedefs Enumerations Groups
Public Types | Public Member Functions | Public Attributes | Related Functions | List of all members
cereal::BinaryData< T > Struct Template Reference

A wrapper around data that can be serialized in a binary fashion. More...

#include <cereal/details/helpers.hpp>

Public Types

using PT = typename std::conditional< std::is_const< typename std::remove_pointer< T >::type >::value, const void *, void * >::type
 

Public Member Functions

 BinaryData (T &&d, uint64_t s)
 

Public Attributes

PT data
 pointer to beginning of data
 
uint64_t size
 size in bytes
 

Related Functions

(Note that these are not member functions.)

template<class T >
BinaryData< T > binary_data (T &&data, size_t size)
 Convenience function to create binary data for both const and non const pointers. More...
 

Detailed Description

template<class T>
struct cereal::BinaryData< T >

A wrapper around data that can be serialized in a binary fashion.

This class is used to demarcate data that can safely be serialized as a binary chunk of data. Individual archives can then choose how best represent this during serialization.

Member Typedef Documentation

template<class T >
using cereal::BinaryData< T >::PT = typename std::conditional<std::is_const<typename std::remove_pointer<T>::type>::value, const void *, void *>::type

Internally store the pointer as a void *, keeping const if created with a const pointer

Friends And Related Function Documentation

template<class T >
BinaryData< T > binary_data ( T &&  data,
size_t  size 
)
related

Convenience function to create binary data for both const and non const pointers.

Parameters
dataPointer to beginning of the data
sizeThe size in bytes of the data

The documentation for this struct was generated from the following files: