DAW JSON Link
Loading...
Searching...
No Matches
daw_json_link.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
12
20
21#include <daw/daw_consteval.h>
22
24 /***
25 * Construct a json_value from a string literal
26 * @return A json_value representing the json document
27 */
28 DAW_CONSTEVAL daw::json::json_value operator""_dawjson( char const *ptr,
29 std::size_t sz ) {
30 return daw::json::json_value( ptr, sz );
31 }
32} // namespace daw::json::literals
33
34namespace daw::json {
35 inline namespace DAW_JSON_VER {
36 DAW_CONSTEVAL std::string_view json_link_version( ) {
37#define DAW_XSTR( x ) DAW_STR( x )
38#define DAW_STR( x ) std::string_view( #x )
39 return DAW_XSTR( DAW_JSON_VER );
40#undef DAW_STR
41#undef DAW_XSTR
42 }
43 } // namespace DAW_JSON_VER
44} // namespace daw::json
basic_json_value<> json_value
An untyped JSON value.
Customization point traits.
A non-owning container for arbitrary JSON values that allows movement/iteration through.
#define DAW_JSON_VER
The version string used in namespace definitions. Must be a valid namespace name.
Definition version.h:20