DAW JSON Link
Loading...
Searching...
No Matches
Macros
daw_json_req_helper.h File Reference
#include <daw/daw_cpp_feature_check.h>

Go to the source code of this file.

Macros

#define DAW_JSON_MAKE_REQ_TRAIT(Name, ...)    DAW_JSON_MAKE_REQ_TRAIT_CUSTOM( Name, __VA_ARGS__ )
 
#define DAW_JSON_MAKE_REQ_TRAIT2(Name, ...)
 
#define DAW_JSON_MAKE_REQ_TRAIT_CUSTOM(Name, ...)
 Disable concepts on gcc < 13.3. See https://github.com/beached/daw_json_link/issues/454.
 
#define DAW_JSON_MAKE_REQ_TYPE_ALIAS_TRAIT(Name, ...)    DAW_JSON_MAKE_REQ_TYPE_ALIAS_TRAIT_CUSTOM( Name, __VA_ARGS__ )
 
#define DAW_JSON_MAKE_REQ_TYPE_ALIAS_TRAIT2(Name, ...)
 
#define DAW_JSON_MAKE_REQ_TYPE_ALIAS_TRAIT_CUSTOM(Name, ...)
 
#define DAW_JSON_MAKE_REQ_TYPE_ALIAS_TRAIT_NT(Name, ...)
 

Macro Definition Documentation

◆ DAW_JSON_MAKE_REQ_TRAIT

#define DAW_JSON_MAKE_REQ_TRAIT (   Name,
  ... 
)     DAW_JSON_MAKE_REQ_TRAIT_CUSTOM( Name, __VA_ARGS__ )

Definition at line 41 of file daw_json_req_helper.h.

◆ DAW_JSON_MAKE_REQ_TRAIT2

#define DAW_JSON_MAKE_REQ_TRAIT2 (   Name,
  ... 
)
Value:
template<typename, typename, typename = void> \
inline constexpr bool Name = false; \
\
template<typename T, typename U> \
inline constexpr bool Name<T, U, std::void_t<decltype( __VA_ARGS__ )>> = \
true

Definition at line 52 of file daw_json_req_helper.h.

◆ DAW_JSON_MAKE_REQ_TRAIT_CUSTOM

#define DAW_JSON_MAKE_REQ_TRAIT_CUSTOM (   Name,
  ... 
)
Value:
template<typename, typename = void> \
inline constexpr bool Name = false; \
\
template<typename T> \
inline constexpr bool Name<T, std::void_t<decltype( __VA_ARGS__ )>> = true

Disable concepts on gcc < 13.3. See https://github.com/beached/daw_json_link/issues/454.

Definition at line 26 of file daw_json_req_helper.h.

◆ DAW_JSON_MAKE_REQ_TYPE_ALIAS_TRAIT

#define DAW_JSON_MAKE_REQ_TYPE_ALIAS_TRAIT (   Name,
  ... 
)     DAW_JSON_MAKE_REQ_TYPE_ALIAS_TRAIT_CUSTOM( Name, __VA_ARGS__ )

Definition at line 91 of file daw_json_req_helper.h.

◆ DAW_JSON_MAKE_REQ_TYPE_ALIAS_TRAIT2

#define DAW_JSON_MAKE_REQ_TYPE_ALIAS_TRAIT2 (   Name,
  ... 
)
Value:
template<typename, typename, typename = void> \
inline constexpr bool Name = false; \
\
template<typename T, typename U> \
inline constexpr bool Name<T, U, std::void_t<__VA_ARGS__>> = true

Definition at line 102 of file daw_json_req_helper.h.

◆ DAW_JSON_MAKE_REQ_TYPE_ALIAS_TRAIT_CUSTOM

#define DAW_JSON_MAKE_REQ_TYPE_ALIAS_TRAIT_CUSTOM (   Name,
  ... 
)
Value:
template<typename, typename = void> \
inline constexpr bool Name = false; \
\
template<typename T> \
inline constexpr bool Name<T, std::void_t<typename __VA_ARGS__>> = true

Definition at line 76 of file daw_json_req_helper.h.

◆ DAW_JSON_MAKE_REQ_TYPE_ALIAS_TRAIT_NT

#define DAW_JSON_MAKE_REQ_TYPE_ALIAS_TRAIT_NT (   Name,
  ... 
)
Value:
template<typename, typename = void> \
inline constexpr bool Name = false; \
\
template<typename T> \
inline constexpr bool Name<T, std::void_t<__VA_ARGS__>> = true

Definition at line 68 of file daw_json_req_helper.h.