Add std::initializer_list support to rdctype::array

This commit is contained in:
baldurk
2017-04-07 10:55:10 +01:00
parent 05d0e2eb77
commit a1f2fdacbc
+27
View File
@@ -110,6 +110,33 @@ struct array
return *this;
}
array(const std::initializer_list<T> &in)
{
elems = 0;
count = 0;
*this = in;
}
array &operator=(const std::initializer_list<T> &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;