DAW JSON Link
include
daw
json
impl
daw_json_alternate_mapping.h
Go to the documentation of this file.
1
// Copyright (c) Darrell Wright
2
//
3
// Distributed under the Boost Software License, Version 1.0. (See accompanying
4
// file LICENSE or copy at http://www.boost.org/LICENSE_1_0.txt)
5
//
6
// Official repository: https://github.com/beached/daw_json_link
7
//
8
9
#pragma once
10
11
#include "
version.h
"
12
13
#include "
daw_json_parse_common.h
"
14
#include "
daw_json_traits.h
"
15
16
#include <cstddef>
17
18
namespace
daw::json
{
19
inline
namespace
DAW_JSON_VER
{
26
template
<
typename
C, std::
size_t
= 0>
27
struct
json_alt
{
28
using
type
= C;
29
};
30
36
template
<
typename
T, std::
size_t
I>
37
struct
default_constructor
<
json_alt
<T, I>>
38
:
default_constructor
<
39
json_details::json_result_t<json_details::json_deduced_type<T>>> {};
40
41
}
// namespace DAW_JSON_VER
42
}
// namespace daw::json
daw_json_parse_common.h
daw_json_traits.h
daw::json
Customization point traits.
Definition:
daw_container_traits.h:22
daw::json::anonymous_namespace{daw_json_alternate_mapping.h}::json_alt
Allows for alternate/multiple mappings of types that already have mappings.
Definition:
daw_json_alternate_mapping.h:27
daw::json::anonymous_namespace{daw_json_alternate_mapping.h}::json_alt::type
C type
Definition:
daw_json_alternate_mapping.h:28
daw::json::default_constructor
Default Constructor for a type. It accounts for aggregate types and uses brace construction for them.
Definition:
daw_json_default_constuctor_fwd.h:39
version.h
DAW_JSON_VER
#define DAW_JSON_VER
The version string used in namespace definitions. Must be a valid namespace name.
Definition:
version.h:25
Generated by
1.9.1