Appender is able to do this:

It seems that Appender allocates its own private data:

private struct Data
{
    size_t capacity;
    Unqual!T[] arr;
    bool canExtend = false;
}
...
private Data* _data;
...
_data = new Data;

But hopefully its bug free unlike what I posted (missing `T.sizeof *` in the memcpy call).


Reply via email to