diff --git a/renderdoc/api/replay/basic_types.h b/renderdoc/api/replay/basic_types.h index 37159fb79..63e8d4146 100644 --- a/renderdoc/api/replay/basic_types.h +++ b/renderdoc/api/replay/basic_types.h @@ -110,6 +110,33 @@ struct array return *this; } + array(const std::initializer_list &in) + { + elems = 0; + count = 0; + *this = in; + } + array &operator=(const std::initializer_list &in) + { + Delete(); + count = (int32_t)in.size(); + if(count == 0) + { + elems = 0; + } + else + { + elems = (T *)allocate(sizeof(T) * count); + int i = 0; + for(const T &t : in) + { + new(elems + i) T(t); + i++; + } + } + return *this; + } + array(const array &o) { elems = 0;