DAW JSON Link
Public Types | Static Public Member Functions | List of all members
daw::json::DAW_JSON_VER::json_submember_tagged_variant< TagMember, Switcher, JsonClasses > Struct Template Reference

#include <daw_json_link_types.h>

Public Types

using i_am_a_json_member_list = void
 
using i_am_a_submember_tagged_variant = void
 
template<typename Constructor >
using result_type = json_details::json_class_parse_result_t< Constructor, json_details::json_deduced_type< daw::traits::first_type< JsonClasses... > >>
 

Static Public Member Functions

template<typename JsonClass , typename ParseState >
static constexpr json_details::from_json_result_t< JsonClass > parse_to_class (ParseState &parse_state, template_param< JsonClass >)
 
template<typename OutputIterator , typename Value >
static constexpr OutputIterator serialize (OutputIterator it, Value const &v)
 

Member Typedef Documentation

◆ i_am_a_json_member_list

template<typename TagMember , typename Switcher , typename... JsonClasses>
using daw::json::DAW_JSON_VER::json_submember_tagged_variant< TagMember, Switcher, JsonClasses >::i_am_a_json_member_list = void

◆ i_am_a_submember_tagged_variant

template<typename TagMember , typename Switcher , typename... JsonClasses>
using daw::json::DAW_JSON_VER::json_submember_tagged_variant< TagMember, Switcher, JsonClasses >::i_am_a_submember_tagged_variant = void

◆ result_type

template<typename TagMember , typename Switcher , typename... JsonClasses>
template<typename Constructor >
using daw::json::DAW_JSON_VER::json_submember_tagged_variant< TagMember, Switcher, JsonClasses >::result_type = json_details::json_class_parse_result_t< Constructor, json_details::json_deduced_type< daw::traits::first_type<JsonClasses...> >>

Member Function Documentation

◆ parse_to_class()

template<typename TagMember , typename Switcher , typename... JsonClasses>
template<typename JsonClass , typename ParseState >
static constexpr json_details:: from_json_result_t<JsonClass> daw::json::DAW_JSON_VER::json_submember_tagged_variant< TagMember, Switcher, JsonClasses >::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 TagMember , typename Switcher , typename... JsonClasses>
template<typename OutputIterator , typename Value >
static constexpr OutputIterator daw::json::DAW_JSON_VER::json_submember_tagged_variant< TagMember, Switcher, JsonClasses >::serialize ( OutputIterator  it,
Value const &  v 
)
inlinestaticconstexpr

Serialize a C++ class to JSON data

Template Parameters
OutputIteratorAn output iterator with a char value_type
Parameters
itOutputIterator to append string data to
Returns
the OutputIterator it

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