DNA Calib 1.1
Project brief
|
#include <OutputArchive.h>
Classes | |
struct | SerializationState |
Public Types | |
using | SizeType = TSize |
using | OffsetType = TOffset |
Public Member Functions | |
ExtendableJSONOutputArchive (TExtender *extender, TStream *stream_, std::uint32_t indentWidth) | |
bool | isOk () |
void | sync () |
void | label (const char *value) |
![]() | |
Archive (TExtender *impl_) | |
bool | isOk () |
void | sync () |
void | label (const char *value) |
void | operator() (Args &&... args) |
TExtender & | operator<< (TSerializable &source) |
TExtender & | operator>> (TSerializable &dest) |
void * | getUserData () const |
void | setUserData (void *data) |
Protected Member Functions | |
template<typename T > | |
void | process (Transparent< T > &&source) |
void | process (Anchor< OffsetType > &) |
void | process (ArchiveOffset< OffsetType > &source) |
void | process (typename ArchiveOffset< OffsetType >::Proxy &) |
void | process (typename ArchiveOffset< OffsetType >::Proxy &&) |
void | process (ArchiveSize< SizeType, OffsetType > &source) |
void | process (typename ArchiveSize< SizeType, OffsetType >::Proxy &) |
void | process (typename ArchiveSize< SizeType, OffsetType >::Proxy &&) |
template<typename T , typename ... Args> | |
void | process (const Blob< T, Args... > &source) |
template<typename T > | |
std::enable_if< traits::has_save_member< T >::value, void >::type | process (const T &source) |
template<typename T > | |
std::enable_if< traits::has_serialize_member< T >::value, void >::type | process (const T &source) |
template<typename T > | |
std::enable_if< traits::has_save_function< T >::value, void >::type | process (const T &source) |
template<typename T > | |
std::enable_if< traits::has_serialize_function< T >::value, void >::type | process (const T &source) |
template<typename T > | |
std::enable_if<!traits::has_save_member< T >::value &&!traits::has_serialize_member< T >::value &&!traits::has_save_function< T >::value &&!traits::has_serialize_function< T >::value, void >::type | process (const T &source) |
void | process (char source) |
void | process (std::uint8_t source) |
void | process (std::int8_t source) |
template<typename T , std::size_t N> | |
void | process (const std::array< T, N > &source) |
template<typename T , typename ... Args> | |
void | process (const std::vector< T, Args... > &source) |
template<typename T , typename ... Args> | |
void | process (const DynArray< T, Args... > &source) |
template<typename T , typename ... Args> | |
void | process (const std::basic_string< T, Args... > &source) |
template<typename K , typename V > | |
void | process (const std::pair< K, V > &source) |
template<typename K , typename V > | |
void | process (const std::tuple< K, V > &source) |
template<class TContainer > | |
void | processElements (const TContainer &source) |
![]() | |
void | dispatch (Head &&head) |
void | dispatch (Head &&head, Tail &&... tail) |
Private Types | |
using | BaseArchive = Archive< TExtender > |
Private Member Functions | |
void | indent () |
void | preStructOutput () |
void | postStructOutput () |
void | pushTransparency () |
bool | popTransparency () |
Private Attributes | |
CharOutputStreamBuf< TStream > | streamBuf |
std::ostream | stream |
SerializationState | state |
|
private |
using terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::OffsetType = TOffset |
using terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::SizeType = TSize |
|
inline |
|
inlineprivate |
References terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::SerializationState::indentLevel, terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::SerializationState::indentWidth, terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::state, and terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::stream.
Referenced by terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::label(), and terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::postStructOutput().
|
inline |
|
inline |
References terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::SerializationState::firstMember, terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::indent(), terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::state, and terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::stream.
|
inlineprivate |
References terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::state, terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::SerializationState::transparent, and terse::transparent().
Referenced by terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::process().
|
inlineprivate |
References terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::indent(), terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::SerializationState::indentLevel, terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::state, and terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::stream.
Referenced by terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::process().
|
inlineprivate |
References terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::SerializationState::firstMember, terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::SerializationState::indentLevel, terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::state, and terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::stream.
Referenced by terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::process().
|
inlineprotected |
|
inlineprotected |
References terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::process(), and terse::ArchiveOffset< TOffset >::value.
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
References terse::base64encode(), terse::Blob< T, TAllocator >::data(), terse::Blob< T, TAllocator >::get_allocator(), terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::process(), and terse::Blob< T, TAllocator >::size().
|
inlineprotected |
References terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::processElements().
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
References terse::Archive< TExtender >::dispatch(), and terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::stream.
|
inlineprotected |
References terse::Archive< TExtender >::dispatch(), and terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::stream.
|
inlineprotected |
|
inlineprotected |
References terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::popTransparency(), terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::postStructOutput(), terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::preStructOutput(), and terse::transparent().
|
inlineprotected |
References terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::popTransparency(), terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::postStructOutput(), terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::preStructOutput(), and terse::transparent().
|
inlineprotected |
References terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::popTransparency(), terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::postStructOutput(), terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::preStructOutput(), and terse::transparent().
|
inlineprotected |
References terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::popTransparency(), terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::postStructOutput(), terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::preStructOutput(), and terse::transparent().
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
References terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::process(), and terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::pushTransparency().
Referenced by terse::JSONOutputArchive< TStream, TSize, TOffset >::process(), and terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::process().
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
References terse::Archive< TExtender >::dispatch(), and terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::stream.
Referenced by terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::process().
|
inlineprivate |
References terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::state, and terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::SerializationState::transparent.
Referenced by terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::process().
|
inline |
|
private |
Referenced by terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::indent(), terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::label(), terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::popTransparency(), terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::postStructOutput(), terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::preStructOutput(), and terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::pushTransparency().
|
private |
Referenced by terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::indent(), terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::label(), terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::postStructOutput(), terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::preStructOutput(), terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::process(), terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::processElements(), and terse::ExtendableJSONOutputArchive< TExtender, TStream, TSize, TOffset >::sync().
|
private |