DAW JSON Link
include
daw
json
impl
daw_json_exec_modes.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 <string_view>
14
15
namespace
daw::json
{
16
inline
namespace
DAW_JSON_VER
{
17
struct
constexpr_exec_tag
{
18
static
constexpr std::string_view name =
"constexpr"
;
19
static
constexpr
bool
can_constexpr =
true
;
20
};
21
struct
runtime_exec_tag
:
constexpr_exec_tag
{
22
static
constexpr std::string_view name =
"runtime"
;
23
static
constexpr
bool
can_constexpr =
false
;
24
};
25
#if defined( DAW_ALLOW_SSE42 )
26
struct
sse42_exec_tag :
runtime_exec_tag
{
27
static
constexpr std::string_view name =
"sse4.2"
;
28
static
constexpr
bool
can_constexpr =
false
;
29
};
30
using
simd_exec_tag
= sse42_exec_tag;
31
#else
32
struct
simd_exec_tag
:
runtime_exec_tag
{};
33
#endif
34
using
default_exec_tag
=
constexpr_exec_tag
;
35
}
// namespace DAW_JSON_VER
36
}
// namespace daw::json
daw::json
Customization point traits.
Definition:
daw_container_traits.h:22
daw::json::anonymous_namespace{daw_json_exec_modes.h}::constexpr_exec_tag
Definition:
daw_json_exec_modes.h:17
daw::json::anonymous_namespace{daw_json_exec_modes.h}::runtime_exec_tag
Definition:
daw_json_exec_modes.h:21
daw::json::simd_exec_tag
Definition:
daw_json_exec_modes.h:32
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