DAW JSON Link
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>
39  json_details::json_result_t<json_details::json_deduced_type<T>>> {};
40 
41  } // namespace DAW_JSON_VER
42 } // namespace daw::json
Customization point traits.
Allows for alternate/multiple mappings of types that already have mappings.
Default Constructor for a type. It accounts for aggregate types and uses brace construction for them.
#define DAW_JSON_VER
The version string used in namespace definitions. Must be a valid namespace name.
Definition: version.h:25