You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: include/nbl/builtin/hlsl/functional.hlsl
+29-53Lines changed: 29 additions & 53 deletions
Original file line number
Diff line number
Diff line change
@@ -134,41 +134,6 @@ ALIAS_STD(divides,/)
134
134
NBL_CONSTEXPR_STATIC_INLINE T identity = T(1);
135
135
};
136
136
137
-
#ifndef __HLSL_VERSION
138
-
139
-
template<typename T>
140
-
struct bit_not : std::bit_not<T>
141
-
{
142
-
using type_t = T;
143
-
};
144
-
145
-
#else
146
-
147
-
template<typename T NBL_STRUCT_CONSTRAINABLE >
148
-
struct bit_not
149
-
{
150
-
using type_t = T;
151
-
152
-
T operator()(NBL_CONST_REF_ARG(T) operand)
153
-
{
154
-
return ~operand;
155
-
}
156
-
};
157
-
158
-
// The default version above only works for fundamental scalars, vectors and matrices. This is because you can't call `~x` unless `x` is one of the former.
159
-
// Similarly, calling `x.operator~()` is not valid for the aforementioned, and only for types overriding this operator. So, we need a specialization.
0 commit comments