The BinarySerializer class can write various data types, including custom ones, to an std::ostream.
More...
#include <reflector.h>
|
| BinarySerializer (std::ostream *stream) |
|
template<typename Type , Traits::EnableIf< Traits::IsSpecializationOf< Type, std::pair > > * = nullptr> |
void | write (const Type &pair) |
|
template<typename Type , Traits::EnableIf< Traits::IsSpecializingAnyOf< Type, std::unique_ptr, std::optional > > * = nullptr> |
void | write (const Type &pointer) |
|
template<typename Type , Traits::EnableIf< Traits::IsSpecializingAnyOf< Type, std::shared_ptr > > * = nullptr> |
void | write (const Type &pointer) |
|
template<typename Type , Traits::EnableIf< IsIteratableExceptString< Type >, Traits::HasSize< Type > > * = nullptr> |
void | write (const Type &iteratable) |
|
template<typename Type , Traits::EnableIf< std::is_enum< Type > > * = nullptr> |
void | write (const Type &enumValue) |
|
template<typename Type , Traits::EnableIf< IsVariant< Type > > * = nullptr> |
void | write (const Type &variant) |
|
template<typename Type , Traits::EnableIf< IsBuiltInType< Type > > * = nullptr> |
void | write (const Type &builtInType, BinaryVersion version) |
|
template<typename Type , Traits::EnableIf< IsCustomType< Type > > * = nullptr> |
void | write (const Type &customType, BinaryVersion version=0) |
|
The BinarySerializer class can write various data types, including custom ones, to an std::ostream.
Definition at line 100 of file reflector.h.
◆ BinarySerializer()
ReflectiveRapidJSON::BinaryReflector::BinarySerializer::BinarySerializer |
( |
std::ostream * | stream | ) |
|
|
inlineexplicit |
◆ write() [1/8]
template<typename Type , Traits::EnableIf<
IsCustomType< Type > > * >
void ReflectiveRapidJSON::BinaryReflector::BinarySerializer::write |
( |
const Type & | builtInType, |
|
|
BinaryVersion | version ) |
◆ write() [2/8]
template<typename Type , Traits::EnableIf<
IsCustomType< Type > > * = nullptr>
void ReflectiveRapidJSON::BinaryReflector::BinarySerializer::write |
( |
const Type & | customType, |
|
|
BinaryVersion | version = 0 ) |
◆ write() [3/8]
template<typename Type , Traits::EnableIf< std::is_enum< Type > > * = nullptr>
void ReflectiveRapidJSON::BinaryReflector::BinarySerializer::write |
( |
const Type & | enumValue | ) |
|
◆ write() [4/8]
void ReflectiveRapidJSON::BinaryReflector::BinarySerializer::write |
( |
const Type & | iteratable | ) |
|
◆ write() [5/8]
template<typename Type , Traits::EnableIf<
IsVariant< Type > > * >
void ReflectiveRapidJSON::BinaryReflector::BinarySerializer::write |
( |
const Type & | pair | ) |
|
◆ write() [6/8]
template<typename Type , Traits::EnableIf< Traits::IsSpecializingAnyOf< Type, std::unique_ptr, std::optional > > * = nullptr>
void ReflectiveRapidJSON::BinaryReflector::BinarySerializer::write |
( |
const Type & | pointer | ) |
|
◆ write() [7/8]
template<typename Type , Traits::EnableIf< Traits::IsSpecializingAnyOf< Type, std::shared_ptr > > * = nullptr>
void ReflectiveRapidJSON::BinaryReflector::BinarySerializer::write |
( |
const Type & | pointer | ) |
|
◆ write() [8/8]
template<typename Type , Traits::EnableIf<
IsVariant< Type > > * = nullptr>
void ReflectiveRapidJSON::BinaryReflector::BinarySerializer::write |
( |
const Type & | variant | ) |
|
◆ ::BinaryReflectorTests
The documentation for this class was generated from the following file: