![]()  | 
  
    PeriDyno 1.2.1
    
   | 
 
serialization to CBOR and MessagePack values More...
#include <json.hpp>
Public Member Functions | |
| binary_writer (output_adapter_t< CharType > adapter) | |
| create a binary writer   | |
| void | write_bson (const BasicJsonType &j) | 
| void | write_cbor (const BasicJsonType &j) | 
| void | write_msgpack (const BasicJsonType &j) | 
| void | write_ubjson (const BasicJsonType &j, const bool use_count, const bool use_type, const bool add_prefix=true, const bool use_bjdata=false) | 
Static Public Member Functions | |
| template<typename C = CharType, enable_if_t< std::is_signed< C >::value &&std::is_signed< char >::value > * = nullptr> | |
| static constexpr CharType | to_char_type (std::uint8_t x) noexcept | 
| template<typename C = CharType, enable_if_t< std::is_signed< C >::value &&std::is_unsigned< char >::value > * = nullptr> | |
| static CharType | to_char_type (std::uint8_t x) noexcept | 
| template<typename C = CharType, enable_if_t< std::is_unsigned< C >::value > * = nullptr> | |
| static constexpr CharType | to_char_type (std::uint8_t x) noexcept | 
| template<typename InputCharType, typename C = CharType, enable_if_t< std::is_signed< C >::value &&std::is_signed< char >::value &&std::is_same< char, typename std::remove_cv< InputCharType >::type >::value > * = nullptr> | |
| static constexpr CharType | to_char_type (InputCharType x) noexcept | 
Private Types | |
| using | string_t = typename BasicJsonType::string_t | 
| using | binary_t = typename BasicJsonType::binary_t | 
| using | number_float_t = typename BasicJsonType::number_float_t | 
Private Member Functions | |
| void | write_bson_entry_header (const string_t &name, const std::uint8_t element_type) | 
| Writes the given element_type and name to the output adapter.   | |
| void | write_bson_boolean (const string_t &name, const bool value) | 
| Writes a BSON element with key name and boolean value value.   | |
| void | write_bson_double (const string_t &name, const double value) | 
| Writes a BSON element with key name and double value value.   | |
| void | write_bson_string (const string_t &name, const string_t &value) | 
| Writes a BSON element with key name and string value value.   | |
| void | write_bson_null (const string_t &name) | 
| Writes a BSON element with key name and null value.   | |
| void | write_bson_integer (const string_t &name, const std::int64_t value) | 
| Writes a BSON element with key name and integer value.   | |
| void | write_bson_unsigned (const string_t &name, const BasicJsonType &j) | 
| Writes a BSON element with key name and unsigned value.   | |
| void | write_bson_object_entry (const string_t &name, const typename BasicJsonType::object_t &value) | 
| Writes a BSON element with key name and object value.   | |
| void | write_bson_array (const string_t &name, const typename BasicJsonType::array_t &value) | 
| Writes a BSON element with key name and array value.   | |
| void | write_bson_binary (const string_t &name, const binary_t &value) | 
| Writes a BSON element with key name and binary value value.   | |
| void | write_bson_element (const string_t &name, const BasicJsonType &j) | 
| Serializes the JSON value j to BSON and associates it with the key name.   | |
| void | write_bson_object (const typename BasicJsonType::object_t &value) | 
| template<typename NumberType, typename std::enable_if< std::is_floating_point< NumberType >::value, int >::type = 0> | |
| void | write_number_with_ubjson_prefix (const NumberType n, const bool add_prefix, const bool use_bjdata) | 
| template<typename NumberType, typename std::enable_if< std::is_unsigned< NumberType >::value, int >::type = 0> | |
| void | write_number_with_ubjson_prefix (const NumberType n, const bool add_prefix, const bool use_bjdata) | 
| template<typename NumberType, typename std::enable_if< std::is_signed< NumberType >::value &&!std::is_floating_point< NumberType >::value, int >::type = 0> | |
| void | write_number_with_ubjson_prefix (const NumberType n, const bool add_prefix, const bool use_bjdata) | 
| CharType | ubjson_prefix (const BasicJsonType &j, const bool use_bjdata) const noexcept | 
| determine the type prefix of container values   | |
| bool | write_bjdata_ndarray (const typename BasicJsonType::object_t &value, const bool use_count, const bool use_type) | 
| template<typename NumberType> | |
| void | write_number (const NumberType n, const bool OutputIsLittleEndian=false) | 
| void | write_compact_float (const number_float_t n, detail::input_format_t format) | 
Static Private Member Functions | |
| static std::size_t | calc_bson_entry_header_size (const string_t &name, const BasicJsonType &j) | 
| static std::size_t | calc_bson_string_size (const string_t &value) | 
| static std::size_t | calc_bson_integer_size (const std::int64_t value) | 
| static constexpr std::size_t | calc_bson_unsigned_size (const std::uint64_t value) noexcept | 
| static std::size_t | calc_bson_array_size (const typename BasicJsonType::array_t &value) | 
| static std::size_t | calc_bson_binary_size (const typename BasicJsonType::binary_t &value) | 
| static std::size_t | calc_bson_element_size (const string_t &name, const BasicJsonType &j) | 
| Calculates the size necessary to serialize the JSON value j with its name.   | |
| static std::size_t | calc_bson_object_size (const typename BasicJsonType::object_t &value) | 
| Calculates the size of the BSON serialization of the given JSON-object j.   | |
| static constexpr CharType | get_cbor_float_prefix (float) | 
| static constexpr CharType | get_cbor_float_prefix (double) | 
| static constexpr CharType | get_msgpack_float_prefix (float) | 
| static constexpr CharType | get_msgpack_float_prefix (double) | 
| static constexpr CharType | get_ubjson_float_prefix (float) | 
| static constexpr CharType | get_ubjson_float_prefix (double) | 
Private Attributes | |
| const bool | is_little_endian = little_endianness() | 
| whether we can assume little endianness   | |
| output_adapter_t< CharType > | oa = nullptr | 
| the output   | |
serialization to CBOR and MessagePack values
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  inlineexplicit | 
      
  | 
  inlinestaticprivate | 
      
  | 
  inlinestaticprivate | 
      
  | 
  inlinestaticprivate | 
      
  | 
  inlinestaticprivate | 
      
  | 
  inlinestaticprivate | 
      
  | 
  inlinestaticprivate | 
Calculates the size of the BSON serialization of the given JSON-object j.
| [in] | value | JSON value to serialize | 
Definition at line 16298 of file json.hpp.

      
  | 
  inlinestaticprivate | 
      
  | 
  inlinestaticconstexprprivatenoexcept | 
      
  | 
  inlinestaticconstexprprivate | 
      
  | 
  inlinestaticconstexprprivate | 
      
  | 
  inlinestaticconstexprprivate | 
      
  | 
  inlinestaticconstexprprivate | 
      
  | 
  inlinestaticconstexprprivate | 
      
  | 
  inlinestaticconstexprprivate | 
      
  | 
  inlinestaticconstexprnoexcept | 
      
  | 
  inlinestaticconstexprnoexcept | 
      
  | 
  inlinestaticnoexcept | 
      
  | 
  inlinestaticconstexprnoexcept | 
      
  | 
  inlineprivatenoexcept | 
      
  | 
  inlineprivate | 
      
  | 
  inline | 
| [in] | j | JSON value to serialize | 
Definition at line 15099 of file json.hpp.

      
  | 
  inlineprivate | 
      
  | 
  inlineprivate | 
      
  | 
  inlineprivate | 
      
  | 
  inlineprivate | 
      
  | 
  inlineprivate | 
      
  | 
  inlineprivate | 
      
  | 
  inlineprivate | 
      
  | 
  inlineprivate | 
      
  | 
  inlineprivate | 
| [in] | value | JSON value to serialize | 
Definition at line 16313 of file json.hpp.


      
  | 
  inlineprivate | 
      
  | 
  inlineprivate | 
      
  | 
  inlineprivate | 
      
  | 
  inline | 
      
  | 
  inlineprivate | 
      
  | 
  inline | 
      
  | 
  inlineprivate | 
      
  | 
  inlineprivate | 
      
  | 
  inlineprivate | 
      
  | 
  inlineprivate | 
      
  | 
  inline | 
| [in] | j | JSON value to serialize | 
| [in] | use_count | whether to use '#' prefixes (optimized format) | 
| [in] | use_type | whether to use '$' prefixes (optimized format) | 
| [in] | add_prefix | whether prefixes need to be used for this value | 
| [in] | use_bjdata | whether write in BJData format, default is false | 
Definition at line 15778 of file json.hpp.


      
  | 
  private | 
      
  | 
  private |