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

#include <daw_json_link_types.h>

Public Types

using i_am_a_json_member_list = daw::fwd_pack< JsonMembers... >
 
using i_am_a_json_tuple_member_list = void
 
template<typename Constructor >
using result_type = json_details::json_class_parse_result_t< Constructor, json_details::ordered_member_subtype_t< json_details::json_deduced_type< JsonMembers > >... >
 

Static Public Member Functions

template<typename JsonClass , typename ParseState >
static constexpr 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)
 

Member Typedef Documentation

◆ i_am_a_json_member_list

template<typename... JsonMembers>
using daw::json::DAW_JSON_VER::json_tuple_member_list< JsonMembers >::i_am_a_json_member_list = daw::fwd_pack<JsonMembers...>

◆ i_am_a_json_tuple_member_list

template<typename... JsonMembers>
using daw::json::DAW_JSON_VER::json_tuple_member_list< JsonMembers >::i_am_a_json_tuple_member_list = void

◆ result_type

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

Member Function Documentation

◆ parse_to_class()

template<typename... JsonMembers>
template<typename JsonClass , typename ParseState >
static constexpr json_details::json_result< JsonClass > daw::json::DAW_JSON_VER::json_tuple_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_tuple_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
Parameters
itOutputIterator to append string data to
argsmembers from C++ class
Returns
the OutputIterator it

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