Currently char[], wchar[], dchar[] and qualified variants fulfill the requirements of isSomeString. Also, char[], wchar[] and qualified variants fulfill the requirements of isNarrowString.

Various algorithms in Phobos test for these traits to optimize away UTF decoding where unnecessary.

I'm thinking of relaxing the definitions to all types that fulfill the following requirements:

* are random access ranges
* element type is some character
* offer .ptr as a @system property that offers a pointer to the first character

This would allow us to generalize the notion of string and offer optimizations for user-defined, not only built-in, strings. Thoughts?


Andrei

Reply via email to