Fix wgpu chained_struct constructors

This commit is contained in:
Nikita Lisitsa 2026-06-30 23:46:51 +03:00
parent 810770564e
commit c5b8eb4f49

View file

@ -66,10 +66,17 @@ namespace psemek::wgpu
struct chained_struct struct chained_struct
{ {
template <typename T> template <typename T>
requires(!std::is_same_v<std::remove_reference_t<T>, chained_struct>)
chained_struct(T && value) chained_struct(T && value)
: impl_(to_chained_struct(std::move(value))) : impl_(to_chained_struct(std::move(value)))
{} {}
chained_struct(chained_struct const &) = default;
chained_struct(chained_struct &&) = default;
chained_struct & operator = (chained_struct const &) = default;
chained_struct & operator = (chained_struct &&) = default;
void * ptr() const void * ptr() const
{ {
return impl_->ptr(); return impl_->ptr();