Andrei Alexandrescu wrote:
grauzone wrote:
Steven Schveighoffer wrote:
I still think having an Appender object or struct is a worthwhile
thing, the "pre-allocate array then set length to zero" model is a
hack at best.
Would that work with Andrei's append cache at all? Setting the length
to zero and then appending is like taking a slice of length 0 and then
appending.
Maybe introduce a write/readable .capacity property, that magically
accesses the cache/GC?
For my money, I'd get rid of that trick:
a.length = 1000;
a.length = 0;
for (...) a ~= x;
Yes, that's what we currently use for setting the capacity of an array.
And it looks stupid and non-intuitive; someone new to D might think it's
a no-op.
Better way please?
Andrei