40 template<
class t_stream>
42 template<
class t_stream>
44 template<
class t_stream>
46 template<
class t_stream>
47 void dump_as_json(t_stream& strm,
const int8_t& v,
size_t indent,
bool insert_newlines);
48 template<
class t_stream>
50 template<
class t_stream>
51 void dump_as_json(t_stream& strm,
const bool& v,
size_t indent,
bool insert_newlines);
52 template<
class t_stream,
class t_type>
53 void dump_as_json(t_stream& strm,
const t_type& v,
size_t indent,
bool insert_newlines);
54 template<
class t_stream>
55 void dump_as_json(t_stream& strm,
const section& sec,
size_t indent,
bool insert_newlines);
63 template<
class t_stream>
70 bool insert_newlines =
true)
74 template<
class t_type>
80 auto last_it = --
a.m_array.end();
81 for(
auto it =
a.m_array.begin(); it !=
a.m_array.end(); it++)
92 template<
class t_stream>
99 bool insert_newlines =
true)
103 template<
class visited_type>
110 template<
class t_stream>
114 boost::apply_visitor(aesv, ae);
117 template<
class t_stream>
121 boost::apply_visitor(sv, se);
124 template<
class t_stream>
130 template<
class t_stream>
133 strm << static_cast<int32_t>(v);
136 template<
class t_stream>
139 strm << static_cast<int32_t>(v);
142 template<
class t_stream>
143 void dump_as_json(t_stream& strm,
const bool& v,
size_t indent,
bool insert_newlines)
153 template<
class t_stream,
class t_type>
154 void dump_as_json(t_stream& strm,
const t_type& v,
size_t indent,
bool insert_newlines)
159 template<
class t_stream>
162 size_t local_indent = indent + 1;
163 std::string newline = insert_newlines ?
"\r\n" :
"";
164 strm <<
"{" << newline;
172 dump_as_json(strm, it->second, local_indent, insert_newlines);
boost::variant< uint64_t, uint32_t, uint16_t, uint8_t, int64_t, int32_t, int16_t, int8_t, double, bool, std::string, section, array_entry > storage_entry
void dump_as_json(t_stream &strm, const array_entry &ae, size_t indent, bool insert_newlines)
void operator()(const array_entry_t< t_type > &a)
boost::make_recursive_variant< array_entry_t< section >, array_entry_t< uint64_t >, array_entry_t< uint32_t >, array_entry_t< uint16_t >, array_entry_t< uint8_t >, array_entry_t< int64_t >, array_entry_t< int32_t >, array_entry_t< int16_t >, array_entry_t< int8_t >, array_entry_t< double >, array_entry_t< bool >, array_entry_t< std::string >, array_entry_t< section >, array_entry_t< boost::recursive_variant_ > >::type array_entry
std::string transform_to_escape_sequence(const std::string &src)
storage_entry_store_to_json_visitor(t_stream &strm, size_t indent, bool insert_newlines=true)
std::string make_indent(size_t indent)
const GenericPointer< typename T::ValueType > T2 T::AllocatorType & a
void operator()(const visited_type &v)
std::map< std::string, storage_entry > m_entries
array_entry_store_to_json_visitor(t_stream &strm, size_t indent, bool insert_newlines=true)