#include <daw_json_link_types.h>
|
using | base_type = json_details::unwrapped_t< Variant, nullable > |
|
using | constructor_t = json_details::json_class_constructor_t< Variant, Constructor > |
|
using | i_am_a_json_type = void |
|
using | i_am_a_tagged_variant = void |
|
using | json_container_type = std::conditional_t< std::disjunction_v< json_details::is_an_ordered_member< json_details::json_deduced_type< tag_submember > >, json_details::is_no_name< json_details::json_deduced_type< tag_submember > > >, json_tuple< std::tuple< typename json_details::json_deduced_type< tag_submember >::parse_to_t >, default_constructor< std::tuple< typename json_details::json_deduced_type< tag_submember >::parse_to_t > >, tuple_opts_def, json_tuple_types_list< tag_submember > >, tuple_json_mapping< tag_submember > > |
|
using | json_elements = typename std::conditional_t< std::is_same_v< AlternativeMappings, json_deduce_type >, json_details::determine_variant_element_types< nullable, Variant >, daw::traits::identity< AlternativeMappings > >::type |
|
using | parse_to_t = Variant |
|
using | switcher = Switcher |
|
using | tag_submember = typename std::conditional_t< json_details::is_an_ordered_member< TagMember >::value, daw::traits::identity< TagMember >, daw::traits::identity< json_details::json_deduced_type< TagMember > > >::type |
|
using | tag_submember_class_wrapper = std::conditional_t< json_details::is_an_ordered_member< tag_submember >::value, json_tuple< std::tuple< typename tag_submember::parse_to_t >, json_deduce_type, tuple_opts_def, json_tuple_types_list< tag_submember > >, json_details::json_deduced_type< tuple_json_mapping< tag_submember > > > |
|
template<JSONNAMETYPE NewName> |
using | with_name = daw::json::json_intrusive_variant< NewName, Variant, TagMember, Switcher, AlternativeMappings, Constructor, Nullable > |
|
using | without_name = json_intrusive_variant |
|
using | wrapped_type = Variant |
|
◆ base_type
template<typename Variant , typename TagMember , typename Switcher , typename AlternativeMappings , typename Constructor ,
JsonNullable Nullable>
◆ constructor_t
template<typename Variant , typename TagMember , typename Switcher , typename AlternativeMappings , typename Constructor ,
JsonNullable Nullable>
◆ i_am_a_json_type
template<typename Variant , typename TagMember , typename Switcher , typename AlternativeMappings , typename Constructor ,
JsonNullable Nullable>
◆ i_am_a_tagged_variant
template<typename Variant , typename TagMember , typename Switcher , typename AlternativeMappings , typename Constructor ,
JsonNullable Nullable>
◆ json_container_type
template<typename Variant , typename TagMember , typename Switcher , typename AlternativeMappings , typename Constructor ,
JsonNullable Nullable>
using daw::json::DAW_JSON_VER::json_base::json_intrusive_variant< Variant, TagMember, Switcher, AlternativeMappings, Constructor, Nullable >::json_container_type = std::conditional_t< std::disjunction_v<json_details::is_an_ordered_member< json_details::json_deduced_type<tag_submember> >, json_details::is_no_name< json_details::json_deduced_type<tag_submember> >>, json_tuple<std::tuple<typename json_details::json_deduced_type< tag_submember>::parse_to_t>, default_constructor< std::tuple<typename json_details::json_deduced_type< tag_submember>::parse_to_t> >, tuple_opts_def, json_tuple_types_list<tag_submember> >, tuple_json_mapping<tag_submember> > |
◆ json_elements
template<typename Variant , typename TagMember , typename Switcher , typename AlternativeMappings , typename Constructor ,
JsonNullable Nullable>
◆ parse_to_t
template<typename Variant , typename TagMember , typename Switcher , typename AlternativeMappings , typename Constructor ,
JsonNullable Nullable>
◆ switcher
template<typename Variant , typename TagMember , typename Switcher , typename AlternativeMappings , typename Constructor ,
JsonNullable Nullable>
◆ tag_submember
template<typename Variant , typename TagMember , typename Switcher , typename AlternativeMappings , typename Constructor ,
JsonNullable Nullable>
◆ tag_submember_class_wrapper
template<typename Variant , typename TagMember , typename Switcher , typename AlternativeMappings , typename Constructor ,
JsonNullable Nullable>
using daw::json::DAW_JSON_VER::json_base::json_intrusive_variant< Variant, TagMember, Switcher, AlternativeMappings, Constructor, Nullable >::tag_submember_class_wrapper = std::conditional_t< json_details::is_an_ordered_member<tag_submember>::value, json_tuple<std::tuple<typename tag_submember::parse_to_t>, json_deduce_type, tuple_opts_def, json_tuple_types_list<tag_submember> >, json_details::json_deduced_type<tuple_json_mapping<tag_submember> >> |
◆ with_name
template<typename Variant , typename TagMember , typename Switcher , typename AlternativeMappings , typename Constructor ,
JsonNullable Nullable>
using daw::json::DAW_JSON_VER::json_base::json_intrusive_variant< Variant, TagMember, Switcher, AlternativeMappings, Constructor, Nullable >::with_name = daw::json::json_intrusive_variant<NewName, Variant, TagMember, Switcher, AlternativeMappings, Constructor, Nullable> |
◆ without_name
template<typename Variant , typename TagMember , typename Switcher , typename AlternativeMappings , typename Constructor ,
JsonNullable Nullable>
◆ wrapped_type
template<typename Variant , typename TagMember , typename Switcher , typename AlternativeMappings , typename Constructor ,
JsonNullable Nullable>
◆ base_expected_type
template<typename Variant , typename TagMember , typename Switcher , typename AlternativeMappings , typename Constructor ,
JsonNullable Nullable>
Initial value:=
@ VariantIntrusive
A variant with up to N types and a Switcher callable that takes uses another member to determine what...
◆ expected_type
template<typename Variant , typename TagMember , typename Switcher , typename AlternativeMappings , typename Constructor ,
JsonNullable Nullable>
Initial value:=
get_parse_type_v<JsonParseTypes::VariantIntrusive, nullable>
◆ must_be_class_member
template<typename Variant , typename TagMember , typename Switcher , typename AlternativeMappings , typename Constructor ,
JsonNullable Nullable>
◆ name
template<typename Variant , typename TagMember , typename Switcher , typename AlternativeMappings , typename Constructor ,
JsonNullable Nullable>
◆ nullable
template<typename Variant , typename TagMember , typename Switcher , typename AlternativeMappings , typename Constructor ,
JsonNullable Nullable>
◆ underlying_json_type
template<typename Variant , typename TagMember , typename Switcher , typename AlternativeMappings , typename Constructor ,
JsonNullable Nullable>
The documentation for this struct was generated from the following file: