Hi D
There are quite a few string, array and range functions in phobos so I'm getting confused as to the right way to encode string data as UTF-8 directly into a stack buffer while keeping track of the write point.
I have some output packets I'm building up in a tight loop. For speed I'm using the a priori knowledge that output packets will never be larger then 64K. So what's the best way to do this:
ubyte[65536] buf;
ubyte[] usable_buf = buf;
// part of some tight loop, how to create function writef_utf8 ?
foreach(input_thing; things){
usable_buf.writef_utf8!"format str"(input_thing.fieldA, input_thing.fieldB);
}
size_t used = buf.length - usable_buf.length;
stdout.write(buf[0.. used]);