On Thursday, 18 December 2014 at 15:12:39 UTC, Nordlöw wrote:
On Wednesday, 17 December 2014 at 12:30:37 UTC, Tobias Pankrath
wrote:
void append(T, Args...)(ref T[] arr, auto ref Args args){
{
static if (args.length == 1)
arr ~= args[0]; // inlined
else{
arr.length += args.length;
foreach(i, e; args)
arr[$ - args.length + i] = e;
}
}
Is it un-Phobos-like to make append return a reference to data
like at
https://github.com/nordlow/justd/blob/master/algorithm_ex.d#L1605
I don't now, returning it at least allows chaining, which is nice.
You shouldn't use my code verbatim though. For example, you
should only use x.length, if x is of element type of data.
Otherwise if you have e.g. an array of array you'd get totally
wrong numbers.