Merge pull request #987 from lioncash/vec

vector_math: Use variable template version of is_signed in Vec classes
This commit is contained in:
bunnei 2018-08-08 23:30:40 -04:00 committed by GitHub
commit 5b1b758326
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -78,7 +78,7 @@ public:
} }
template <typename U = T> template <typename U = T>
constexpr Vec2<std::enable_if_t<std::is_signed<U>::value, U>> operator-() const { constexpr Vec2<std::enable_if_t<std::is_signed_v<U>, U>> operator-() const {
return {-x, -y}; return {-x, -y};
} }
constexpr Vec2<decltype(T{} * T{})> operator*(const Vec2& other) const { constexpr Vec2<decltype(T{} * T{})> operator*(const Vec2& other) const {
@ -227,7 +227,7 @@ public:
} }
template <typename U = T> template <typename U = T>
constexpr Vec3<std::enable_if_t<std::is_signed<U>::value, U>> operator-() const { constexpr Vec3<std::enable_if_t<std::is_signed_v<U>, U>> operator-() const {
return {-x, -y, -z}; return {-x, -y, -z};
} }
@ -436,7 +436,7 @@ public:
} }
template <typename U = T> template <typename U = T>
constexpr Vec4<std::enable_if_t<std::is_signed<U>::value, U>> operator-() const { constexpr Vec4<std::enable_if_t<std::is_signed_v<U>, U>> operator-() const {
return {-x, -y, -z, -w}; return {-x, -y, -z, -w};
} }