xerus
a general purpose tensor library
|
Header file for macros that encapsulate SFINAE functionality. More...
#include <type_traits>
Go to the source code of this file.
Macros | |
#define | XERUS_ADD_MOVE(newTypeName, ...) class newTypeName, typename std::enable_if<std::is_base_of<__VA_ARGS__, typename std::decay<newTypeName>::type>::value, int>::type = 0 |
Adds a template arguments whithin an existing template argument list, which can be of only one specified class, but allows & and && types. More... | |
#define | XERUS_GENERATE_HAS_MEMBER(member) |
Macro to create a template class that checks for the existence of member functions. To be used in other template definitions in a SFINAE fashion. More... | |
Header file for macros that encapsulate SFINAE functionality.
Definition in file sfinae.h.
#define XERUS_ADD_MOVE | ( | newTypeName, | |
... | |||
) | class newTypeName, typename std::enable_if<std::is_base_of<__VA_ARGS__, typename std::decay<newTypeName>::type>::value, int>::type = 0 |
#define XERUS_GENERATE_HAS_MEMBER | ( | member | ) |
Macro to create a template class that checks for the existence of member functions. To be used in other template definitions in a SFINAE fashion.