DAW JSON Link
Public Types | Static Public Member Functions | List of all members
daw::json::DAW_JSON_VER::json_member_list< JsonMembers > Struct Template Reference

#include <daw_json_link_types.h>

Public Types

using i_am_a_json_member_list = void
 
template<typename Constructor >
using result_type = json_details::json_class_parse_result_t< Constructor, JsonMembers... >
 

Static Public Member Functions

template<typename JsonClass , typename ParseState >
static constexpr DAW_ATTRIB_FLATTEN json_details::json_result< JsonClass > parse_to_class (ParseState &parse_state, template_param< JsonClass >)
 
template<typename OutputIterator , typename Value , template< class... > class Tuple, typename... Ts>
static constexpr OutputIterator serialize (OutputIterator it, Tuple< Ts... > const &args, Value const &v)
 

Detailed Description

template<typename... JsonMembers>
struct daw::json::DAW_JSON_VER::json_member_list< JsonMembers >

Template Parameters
JsonMembersJSON classes that map the relation ship from the json data to the classes constructor

Member Typedef Documentation

◆ i_am_a_json_member_list

template<typename... JsonMembers>
using daw::json::DAW_JSON_VER::json_member_list< JsonMembers >::i_am_a_json_member_list = void

◆ result_type

template<typename... JsonMembers>
template<typename Constructor >
using daw::json::DAW_JSON_VER::json_member_list< JsonMembers >::result_type = json_details::json_class_parse_result_t<Constructor, JsonMembers...>

Member Function Documentation

◆ parse_to_class()

template<typename... JsonMembers>
template<typename JsonClass , typename ParseState >
static constexpr DAW_ATTRIB_FLATTEN json_details:: json_result<JsonClass> daw::json::DAW_JSON_VER::json_member_list< JsonMembers >::parse_to_class ( ParseState &  parse_state,
template_param< JsonClass >   
)
inlinestaticconstexpr

Parse JSON data and construct a C++ class. This is used by parse_value to get back into a mode with a JsonMembers...

Template Parameters
TThe result of parsing json_class
ParseStateInput range type
Parameters
parse_stateJSON data to parse
Returns
A T object

◆ serialize()

template<typename... JsonMembers>
template<typename OutputIterator , typename Value , template< class... > class Tuple, typename... Ts>
static constexpr OutputIterator daw::json::DAW_JSON_VER::json_member_list< JsonMembers >::serialize ( OutputIterator  it,
Tuple< Ts... > const &  args,
Value const &  v 
)
inlinestaticconstexpr

Serialize a C++ class to JSON data

Template Parameters
OutputIteratorAn output iterator with a char value_type
Argstuple of values that map to the JSON members of v
ValueValue type being serialized
Parameters
itOutputIterator to append string data to
argsmembers from C++ class
vvalue to be serialized as JSON object
Returns
the OutputIterator it at final position

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