On Wednesday, 14 May 2025 at 11:38:59 UTC, Nick Treleaven wrote:
On Wednesday, 14 May 2025 at 03:36:40 UTC, Jonathan M Davis
wrote:
to!string definitely deals with null-terminated strings, or it
wouldn't work at all. It's not the kind of thing that would
work by accident.
I don't think it's good API design:
Pointer to string conversions convert the pointer to a size_t
value. If pointer is char*, treat it as C-style strings. In
that case, this function is @system.
So `to!string` is bad for generic code.
Yup. to!T is like a swiss army knife - it can do everything, but
it is never as good as a tool dedicated to a specific purpose.
So, to!T is good if T can be anything, but if you know beforehand
that T will always be string, use something else like
ptr.fromStringz.idup