On Wednesday, 3 July 2024 at 03:52:41 UTC, Steven Schveighoffer
wrote:
```d
mixin template implement()
{
mixin(() {
// ctfe new array is basically the same as static array
char[] buffer = new char[4096];
int pos = 0;
void append(string str)
{
buffer[pos .. pos + str.length] = str[];
pos += str.length;
}
append("void* ctx;");
return buffer[0 .. pos];
}());
}
```
And yes, it is faster to do this than appending. But you have
to do a *lot* of it to make a huge difference.
What about creating an array of strings and then using join? One
obvious problem with this solution is the requirement to specify
the size of `buffer`.