diff --git a/include/crap/type_traits b/include/crap/type_traits new file mode 100644 index 0000000..6229358 --- /dev/null +++ b/include/crap/type_traits @@ -0,0 +1,7 @@ +#ifndef CRAP_TYPETRAITS +#define CRAP_TYPETRAITS + +#include "type_traits.d/voidt.h" + +#endif + diff --git a/include/crap/type_traits.d/voidt.h b/include/crap/type_traits.d/voidt.h new file mode 100644 index 0000000..7d40ceb --- /dev/null +++ b/include/crap/type_traits.d/voidt.h @@ -0,0 +1,20 @@ +#ifndef CRAP_TYPETRAITS_VOIDT +#define CRAP_TYPETRAITS_VOIDT + +#include "../version.d/libvoidt.h" + +#if (crap_lib_void_t >= 201411L) +#include +#endif + +namespace crap +{ +#if (crap_lib_void_t >= 201411L) + template using voidT = std :: void_t; +#else + //TODO: May require CWG Issue 1558 walkaround. + template using voidT = void; +#endif +} +#endif +