Go to the documentation of this file.
28#ifndef OPM_HAS_MEMBER_GENERATOR_MACROS_HH
29#define OPM_HAS_MEMBER_GENERATOR_MACROS_HH
49#define OPM_GENERATE_HAS_MEMBER(MEMBER_NAME, ...) \
50 template <class T, class T2> \
51 struct HasMember_##MEMBER_NAME##_Helper \
53 static constexpr bool value = false; \
57 struct HasMember_##MEMBER_NAME##_Helper<T, \
58 typename ::Opm::AlwaysVoid<decltype(std::declval<T>().MEMBER_NAME(__VA_ARGS__))>::type> \
60 static constexpr bool value = true; \
63 template<typename T> \
64 struct HasMember_##MEMBER_NAME \
66 static constexpr bool value = HasMember_##MEMBER_NAME##_Helper<T, void>::value; \
Definition: Air_Mesitylene.hpp:34
|