Electroneum
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
json_archive_base< Stream, IsSaving > Struct Template Reference

the base class of json archive type More...

#include <json_archive.h>

Collaboration diagram for json_archive_base< Stream, IsSaving >:
Collaboration graph
[legend]

Public Types

typedef Stream stream_type
 
typedef json_archive_base< Stream, IsSaving > base_type
 
typedef boost::mpl::bool_< IsSaving > is_saving
 
typedef const char * variant_tag_type
 

Public Member Functions

 json_archive_base (stream_type &s, bool indent=false)
 
void tag (const char *tag)
 
void begin_object ()
 
void end_object ()
 
void begin_variant ()
 
void end_variant ()
 
Stream & stream ()
 

Protected Member Functions

void make_indent ()
 

Protected Attributes

stream_typestream_
 
bool indent_
 
bool object_begin
 
size_t depth_
 

Detailed Description

template<class Stream, bool IsSaving>
struct json_archive_base< Stream, IsSaving >

the base class of json archive type

\detailed contains the basic logic for serializing a json archive

Member Typedef Documentation

◆ base_type

template<class Stream , bool IsSaving>
typedef json_archive_base<Stream, IsSaving> json_archive_base< Stream, IsSaving >::base_type

◆ is_saving

template<class Stream , bool IsSaving>
typedef boost::mpl::bool_<IsSaving> json_archive_base< Stream, IsSaving >::is_saving

◆ stream_type

template<class Stream , bool IsSaving>
typedef Stream json_archive_base< Stream, IsSaving >::stream_type

◆ variant_tag_type

template<class Stream , bool IsSaving>
typedef const char* json_archive_base< Stream, IsSaving >::variant_tag_type

Constructor & Destructor Documentation

◆ json_archive_base()

template<class Stream , bool IsSaving>
json_archive_base< Stream, IsSaving >::json_archive_base ( stream_type s,
bool  indent = false 
)
inline

Member Function Documentation

◆ begin_object()

template<class Stream , bool IsSaving>
void json_archive_base< Stream, IsSaving >::begin_object ( )
inline

◆ begin_variant()

template<class Stream , bool IsSaving>
void json_archive_base< Stream, IsSaving >::begin_variant ( )
inline

◆ end_object()

template<class Stream , bool IsSaving>
void json_archive_base< Stream, IsSaving >::end_object ( )
inline

◆ end_variant()

template<class Stream , bool IsSaving>
void json_archive_base< Stream, IsSaving >::end_variant ( )
inline

◆ make_indent()

template<class Stream , bool IsSaving>
void json_archive_base< Stream, IsSaving >::make_indent ( )
inlineprotected

◆ stream()

template<class Stream , bool IsSaving>
Stream& json_archive_base< Stream, IsSaving >::stream ( )
inline

◆ tag()

template<class Stream , bool IsSaving>
void json_archive_base< Stream, IsSaving >::tag ( const char *  tag)
inline

Member Data Documentation

◆ depth_

template<class Stream , bool IsSaving>
size_t json_archive_base< Stream, IsSaving >::depth_
protected

◆ indent_

template<class Stream , bool IsSaving>
bool json_archive_base< Stream, IsSaving >::indent_
protected

◆ object_begin

template<class Stream , bool IsSaving>
bool json_archive_base< Stream, IsSaving >::object_begin
protected

◆ stream_

template<class Stream , bool IsSaving>
stream_type& json_archive_base< Stream, IsSaving >::stream_
protected

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