diff options
author | Marc Chevrier <marc.chevrier@gmail.com> | 2020-01-07 11:29:32 +0100 |
---|---|---|
committer | Marc Chevrier <marc.chevrier@gmail.com> | 2020-01-17 11:09:48 +0100 |
commit | 04c2f67492c5ccc59592e8575a7c66f66aca71a6 (patch) | |
tree | 42a9373864bdf8a3d8bb6eb6709e9b9945c0deb8 /Utilities/std/cm | |
parent | 1e728706de1457a25fe531d5905c28570a208a08 (diff) | |
download | cmake-04c2f67492c5ccc59592e8575a7c66f66aca71a6.tar.gz |
STL Support: extends type_traits for future developments
Diffstat (limited to 'Utilities/std/cm')
-rw-r--r-- | Utilities/std/cm/type_traits | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/Utilities/std/cm/type_traits b/Utilities/std/cm/type_traits index 4dfe17bc8c..e32c2c676d 100644 --- a/Utilities/std/cm/type_traits +++ b/Utilities/std/cm/type_traits @@ -33,6 +33,8 @@ using std::bool_constant; using std::invoke_result; using std::invoke_result_t; +using std::void_t; + #else // Helper classes @@ -46,6 +48,14 @@ using invoke_result = std::result_of<F(ArgTypes...)>; template <class F, typename... ArgTypes> using invoke_result_t = typename invoke_result<F, ArgTypes...>::type; +template <typename... ArgTypes> +struct make_void +{ + typedef void type; +}; +template <typename... ArgTypes> +using void_t = typename make_void<ArgTypes...>::type; + #endif } // namespace cm |