Warning, file /include/nlohmann/detail/abi_macros.hpp was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005
0006
0007
0008
0009 #pragma once
0010
0011
0012
0013 #ifndef JSON_SKIP_LIBRARY_VERSION_CHECK
0014 #if defined(NLOHMANN_JSON_VERSION_MAJOR) && defined(NLOHMANN_JSON_VERSION_MINOR) && defined(NLOHMANN_JSON_VERSION_PATCH)
0015 #if NLOHMANN_JSON_VERSION_MAJOR != 3 || NLOHMANN_JSON_VERSION_MINOR != 11 || NLOHMANN_JSON_VERSION_PATCH != 3
0016 #warning "Already included a different version of the library!"
0017 #endif
0018 #endif
0019 #endif
0020
0021 #define NLOHMANN_JSON_VERSION_MAJOR 3
0022 #define NLOHMANN_JSON_VERSION_MINOR 11
0023 #define NLOHMANN_JSON_VERSION_PATCH 3
0024
0025 #ifndef JSON_DIAGNOSTICS
0026 #define JSON_DIAGNOSTICS 0
0027 #endif
0028
0029 #ifndef JSON_USE_LEGACY_DISCARDED_VALUE_COMPARISON
0030 #define JSON_USE_LEGACY_DISCARDED_VALUE_COMPARISON 0
0031 #endif
0032
0033 #if JSON_DIAGNOSTICS
0034 #define NLOHMANN_JSON_ABI_TAG_DIAGNOSTICS _diag
0035 #else
0036 #define NLOHMANN_JSON_ABI_TAG_DIAGNOSTICS
0037 #endif
0038
0039 #if JSON_USE_LEGACY_DISCARDED_VALUE_COMPARISON
0040 #define NLOHMANN_JSON_ABI_TAG_LEGACY_DISCARDED_VALUE_COMPARISON _ldvcmp
0041 #else
0042 #define NLOHMANN_JSON_ABI_TAG_LEGACY_DISCARDED_VALUE_COMPARISON
0043 #endif
0044
0045 #ifndef NLOHMANN_JSON_NAMESPACE_NO_VERSION
0046 #define NLOHMANN_JSON_NAMESPACE_NO_VERSION 0
0047 #endif
0048
0049
0050 #define NLOHMANN_JSON_ABI_TAGS_CONCAT_EX(a, b) json_abi ## a ## b
0051 #define NLOHMANN_JSON_ABI_TAGS_CONCAT(a, b) \
0052 NLOHMANN_JSON_ABI_TAGS_CONCAT_EX(a, b)
0053
0054 #define NLOHMANN_JSON_ABI_TAGS \
0055 NLOHMANN_JSON_ABI_TAGS_CONCAT( \
0056 NLOHMANN_JSON_ABI_TAG_DIAGNOSTICS, \
0057 NLOHMANN_JSON_ABI_TAG_LEGACY_DISCARDED_VALUE_COMPARISON)
0058
0059
0060 #define NLOHMANN_JSON_NAMESPACE_VERSION_CONCAT_EX(major, minor, patch) \
0061 _v ## major ## _ ## minor ## _ ## patch
0062 #define NLOHMANN_JSON_NAMESPACE_VERSION_CONCAT(major, minor, patch) \
0063 NLOHMANN_JSON_NAMESPACE_VERSION_CONCAT_EX(major, minor, patch)
0064
0065 #if NLOHMANN_JSON_NAMESPACE_NO_VERSION
0066 #define NLOHMANN_JSON_NAMESPACE_VERSION
0067 #else
0068 #define NLOHMANN_JSON_NAMESPACE_VERSION \
0069 NLOHMANN_JSON_NAMESPACE_VERSION_CONCAT(NLOHMANN_JSON_VERSION_MAJOR, \
0070 NLOHMANN_JSON_VERSION_MINOR, \
0071 NLOHMANN_JSON_VERSION_PATCH)
0072 #endif
0073
0074
0075 #define NLOHMANN_JSON_NAMESPACE_CONCAT_EX(a, b) a ## b
0076 #define NLOHMANN_JSON_NAMESPACE_CONCAT(a, b) \
0077 NLOHMANN_JSON_NAMESPACE_CONCAT_EX(a, b)
0078
0079 #ifndef NLOHMANN_JSON_NAMESPACE
0080 #define NLOHMANN_JSON_NAMESPACE \
0081 nlohmann::NLOHMANN_JSON_NAMESPACE_CONCAT( \
0082 NLOHMANN_JSON_ABI_TAGS, \
0083 NLOHMANN_JSON_NAMESPACE_VERSION)
0084 #endif
0085
0086 #ifndef NLOHMANN_JSON_NAMESPACE_BEGIN
0087 #define NLOHMANN_JSON_NAMESPACE_BEGIN \
0088 namespace nlohmann \
0089 { \
0090 inline namespace NLOHMANN_JSON_NAMESPACE_CONCAT( \
0091 NLOHMANN_JSON_ABI_TAGS, \
0092 NLOHMANN_JSON_NAMESPACE_VERSION) \
0093 {
0094 #endif
0095
0096 #ifndef NLOHMANN_JSON_NAMESPACE_END
0097 #define NLOHMANN_JSON_NAMESPACE_END \
0098 } \
0099 }
0100 #endif