Added spaceship operators for matrices.

This commit is contained in:
Patrick 2023-01-28 16:54:31 +01:00
parent 16b7a1d7d4
commit 7dd1d85434
Signed by: mewin
GPG Key ID: CEDB412C39B5BC47

View File

@ -11,6 +11,9 @@ namespace glm
template<length_t L, typename T, qualifier Q>
struct vec;
template<length_t C, length_t R, typename T, qualifier Q>
struct mat;
template<length_t L, typename T, qualifier Q>
GLM_FUNC_DECL GLM_CONSTEXPR std::strong_ordering operator<=>(const vec<L, T, Q>& left, const vec<L, T, Q>& right)
{
@ -34,4 +37,19 @@ namespace glm
}
return std::strong_ordering::equal;
}
template<length_t C, length_t R, typename T, qualifier Q>
GLM_FUNC_DECL GLM_CONSTEXPR std::strong_ordering operator<=>(const mat<C, R, T, Q>& left, const mat<C, R, T, Q>& right)
{
for (int col = 0; col < C; ++col)
{
for (int row = 0; row < R; ++row)
{
if (left[col][row] != right[col][row]) {
return left[col][row] <=> right[col][row];
}
}
}
return std::strong_ordering::equal;
}
}