Create unpacking function for vectors

Signed-off-by: Slendi <slendi@socopon.com>
This commit is contained in:
2025-12-06 21:37:46 +02:00
parent e32204db0c
commit b5e0aabe37
2 changed files with 13 additions and 0 deletions

View File

@@ -162,6 +162,16 @@ public:
VEC_ACC(v, 2, 1)
#undef VEC_ACC
template <class... Args, std::size_t... Is>
constexpr void unpack_impl(std::index_sequence<Is...>,
Args &...args) noexcept {
((args = (*this)[Is]), ...);
}
template <class... Args> constexpr void unpack(Args &...args) noexcept {
unpack_impl(std::index_sequence_for<Args...>{}, args...);
}
// Unary
constexpr auto operator-() noexcept -> Vec {
Vec r{};