![]() |
DAW JSON Link
|
#include <daw_json_link.h>
Public Types | |
using | base_type = json_details::unwrap_type< Container, Nullable > |
using | constructor_t = Constructor |
using | i_am_a_json_type = void |
using | json_class_t = json_class< no_name, tuple_json_mapping< json_key_t, json_value_t > > |
using | json_key_t = json_details::unnamed_default_type_mapping< JsonKeyType, json_details::default_key_name > |
using | json_value_t = json_details::unnamed_default_type_mapping< JsonValueType, json_details::default_value_name > |
using | parse_to_t = std::invoke_result_t< Constructor > |
Static Public Attributes | |
static constexpr JsonParseTypes | base_expected_type |
static constexpr JsonParseTypes | expected_type |
static constexpr daw::string_view | name = Name |
static constexpr bool | nullable = Nullable == JsonNullable::Nullable |
static constexpr JsonBaseParseTypes | underlying_json_type |
Map a KV type json array [ {"key": ValueOfKeyType, "value": ValueOfValueType},... ] to a c++ class. needs to be constructable with a pointer, size
Name | name of JSON member to link to |
Container | type to put values in |
JsonValueType | Json type of value in kv pair( e.g. json_number, json_string, ... ). If specific json member type isn't specified, the member name defaults to "value" |
JsonKeyType | type of key in kv pair. If specific json member type isn't specified, the key name defaults to "key" |
Constructor | A callable used to make Container, default will use the Containers constructor. Both normal and aggregate are supported |
Nullable | Can the member be missing or have a null value |
using daw::json::json_key_value_array< Name, Container, JsonValueType, JsonKeyType, Constructor, Nullable >::base_type = json_details::unwrap_type<Container, Nullable> |
using daw::json::json_key_value_array< Name, Container, JsonValueType, JsonKeyType, Constructor, Nullable >::constructor_t = Constructor |
using daw::json::json_key_value_array< Name, Container, JsonValueType, JsonKeyType, Constructor, Nullable >::i_am_a_json_type = void |
using daw::json::json_key_value_array< Name, Container, JsonValueType, JsonKeyType, Constructor, Nullable >::json_class_t = json_class<no_name, tuple_json_mapping<json_key_t, json_value_t> > |
using daw::json::json_key_value_array< Name, Container, JsonValueType, JsonKeyType, Constructor, Nullable >::json_key_t = json_details::unnamed_default_type_mapping< JsonKeyType, json_details::default_key_name> |
using daw::json::json_key_value_array< Name, Container, JsonValueType, JsonKeyType, Constructor, Nullable >::json_value_t = json_details::unnamed_default_type_mapping< JsonValueType, json_details::default_value_name> |
using daw::json::json_key_value_array< Name, Container, JsonValueType, JsonKeyType, Constructor, Nullable >::parse_to_t = std::invoke_result_t<Constructor> |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |