File tree Expand file tree Collapse file tree 1 file changed +11
-2
lines changed
dpctl/tensor/libtensor/include/utils Expand file tree Collapse file tree 1 file changed +11
-2
lines changed Original file line number Diff line number Diff line change @@ -35,13 +35,22 @@ namespace tensor
35
35
namespace type_utils
36
36
{
37
37
38
- template <class T > struct is_complex : std::false_type
38
+ template <typename T, typename = void >
39
+ struct is_complex : public std ::false_type
39
40
{
40
41
};
41
- template <class T > struct is_complex <std::complex<T>> : std::true_type
42
+
43
+ template <typename T>
44
+ struct is_complex <T, std::enable_if_t <std::is_same_v<std::remove_cv_t <T>, std::complex<sycl::half>> ||
45
+ std::is_same_v<std::remove_cv_t <T>, std::complex<float >> ||
46
+ std::is_same_v<std::remove_cv_t <T>, std::complex<double >>>>
47
+ : public std::true_type
42
48
{
43
49
};
44
50
51
+ template <typename T>
52
+ constexpr bool is_complex_v = is_complex<T>::value;
53
+
45
54
template <typename dstTy, typename srcTy> dstTy convert_impl (const srcTy &v)
46
55
{
47
56
if constexpr (std::is_same<dstTy, srcTy>::value) {
You can’t perform that action at this time.
0 commit comments