JSON support. More...
Namespaces | |
namespace | blocking |
namespace | parser |
SAX parser tools. | |
Classes | |
class | BadStreamException |
class | ConversionException |
Conversion error. More... | |
class | Exception |
class | Iterator |
Iterator for formats::json::Value More... | |
class | MemberMissingException |
class | OutOfBoundsException |
class | ParseException |
class | StringBuilder |
SAX like builder of JSON string. Use with extreme caution and only in performance critical part of your code. More... | |
class | TypeMismatchException |
class | Value |
Non-mutable JSON value representation. More... | |
class | ValueBuilder |
Builder for JSON. More... | |
Functions | |
template<typename... Args> | |
Value | MakeObject (Args &&...) |
template<typename... Args> | |
Value | MakeArray (Args &&...) |
formats::json::Value | FromString (std::string_view doc) |
Parse JSON from string. | |
formats::json::Value | FromStream (std::istream &is) |
Parse JSON from stream. | |
void | Serialize (const formats::json::Value &doc, std::ostream &os) |
Serialize JSON to stream. | |
std::string | ToString (const formats::json::Value &doc) |
Serialize JSON to string. | |
std::string | ToStableString (const formats::json::Value &doc) |
std::string | ToStableString (formats::json::Value &&doc) |
logging::LogHelper & | operator<< (logging::LogHelper &, const formats::json::Value &) |
Log JSON. | |
void | WriteToStream (bool value, StringBuilder &sw) |
void | WriteToStream (long long value, StringBuilder &sw) |
void | WriteToStream (unsigned long long value, StringBuilder &sw) |
void | WriteToStream (int value, StringBuilder &sw) |
void | WriteToStream (unsigned value, StringBuilder &sw) |
void | WriteToStream (long value, StringBuilder &sw) |
void | WriteToStream (unsigned long value, StringBuilder &sw) |
void | WriteToStream (double value, StringBuilder &sw) |
void | WriteToStream (const char *value, StringBuilder &sw) |
void | WriteToStream (std::string_view value, StringBuilder &sw) |
void | WriteToStream (const formats::json::Value &value, StringBuilder &sw) |
void | WriteToStream (const std::string &value, StringBuilder &sw) |
void | WriteToStream (std::chrono::system_clock::time_point tp, StringBuilder &sw) |
template<> | |
std::string | Value::As< std::string > () const |
template<> | |
std::string | Value::ConvertTo< std::string > () const |
Value | Parse (const Value &value, parse::To< Value >) |
template<typename T > | |
std::enable_if_t< meta::kIsUniqueMap< T > &&utils::IsStrongTypedefLoggable(T::key_type::kOps), Value > | Serialize (const T &value, formats::serialize::To< Value >) |
Optimized maps of StrongTypedefs serialization for JSON. | |
template<typename T > | |
std::enable_if_t< meta::kIsUniqueMap< T > &&std::is_convertible_v< typename T::key_type, std::string >, Value > | Serialize (const T &value, formats::serialize::To< Value >) |
Optimized maps serialization for JSON. | |
void | PrintTo (const Value &, std::ostream *) |
JSON support.
std::enable_if_t< meta::kIsUniqueMap< T > && utils::IsStrongTypedefLoggable(T::key_type::kOps), Value > formats::json::Serialize | ( | const T & | value, |
formats::serialize::To< Value > | |||
) |
Optimized maps of StrongTypedefs serialization for JSON.
Definition at line 235 of file value_builder.hpp.
std::enable_if_t< meta::kIsUniqueMap< T > && std::is_convertible_v< typename T::key_type, std::string >, Value > formats::json::Serialize | ( | const T & | value, |
formats::serialize::To< Value > | |||
) |
Optimized maps serialization for JSON.
Definition at line 248 of file value_builder.hpp.
std::string formats::json::ToStableString | ( | const formats::json::Value & | doc | ) |
Stably serialize JSON to string. In result there is no whitespace, keys are sorted and character escaping is stabilized