On Thu, 03 Mar 2011 11:54:58 -0500, kenji hara <[email protected]> wrote:

Even without performance issue, Appender is necessary because it
configures output range.

Currently std.array.put does not allow empty array as its argument.
int[] arr = [];
arr.put(1);  // invalid. this does not means appending.

Therefore building an array its length is not known beforehand
requires Appender.

Performance really is the only issue, the complexity of Appender is not necessary for your issue. One could make a very simple appender struct if creating a proper output range was the only problem:

struct appender(T)
{
   T[] data;
   void put(T t) { data ~= t; }
}

-Steve

Reply via email to