30#ifndef CEREAL_TYPES_STRING_HPP_
31#define CEREAL_TYPES_STRING_HPP_
39 template<
class Archive,
class CharT,
class Traits,
class Alloc>
inline
40 typename std::enable_if<traits::is_output_serializable<BinaryData<CharT>, Archive>::value,
void>::type
45 ar(
binary_data( str.data(), str.size() *
sizeof(CharT) ) );
49 template<
class Archive,
class CharT,
class Traits,
class Alloc>
inline
50 typename std::enable_if<traits::is_input_serializable<BinaryData<CharT>, Archive>::value,
void>::type
55 str.resize(
static_cast<std::size_t
>(size));
56 ar(
binary_data(
const_cast<CharT *
>( str.data() ),
static_cast<std::size_t
>(size) *
sizeof(CharT) ) );
Main cereal functionality.
SizeTag< T > make_size_tag(T &&sz)
Creates a size tag from some variable.
Definition cereal.hpp:96
BinaryData< T > binary_data(T &&data, size_t size)
Convenience function to create binary data for both const and non const pointers.
Definition cereal.hpp:81
CEREAL_SIZE_TYPE size_type
The size type used by cereal.
Definition helpers.hpp:61
#define CEREAL_LOAD_FUNCTION_NAME
The deserialization (load) function name to search for.
Definition macros.hpp:85
#define CEREAL_SAVE_FUNCTION_NAME
The serialization (save) function name to search for.
Definition macros.hpp:92