Report a bugIf you spot a problem with this page, click here to create a Bugzilla issue.
Improve this pageQuickly fork, edit online, and submit a pull request for this page.Requires a signed-in GitHub account. This works well for small changes.If you'd like to make larger changes you may want to consider usinga local clone.
dmd.root.utf
Functions related to UTF encoding.
pure nothrow @nogc @safe bool
utf_isValidDchar(dchar
c);
The Unicode code space is the range of code points [0x000000,0x10FFFF]except the UTF-16 surrogate pairs in the range [0xD800,0xDFFF]
pure nothrow @nogc @safe int
utf_codeLengthChar(dchar
c);
Returns the code length of c in code units.
pure nothrow @nogc @safe int
utf_codeLength(int
sz, dchar
c);
Returns the code length of c in code units for the encoding. sz is the encoding: 1 = utf8, 2 = utf16, 4 = utf32.
pure nothrow @nogc @safe bool
isBidiControl(dchar
c);
Checks whether an Unicode code point is a bidirectional control character.
pure nothrow @nogc @safe string
utf_decodeChar(const(char)[]
s, ref size_t
ridx, out dchar
rresult);
Decode a UTF-8 sequence as a single UTF-32 code point.
Parameters:const(char)[]s | UTF-8 sequence |
size_tridx | starting index in s[], updated to reflect number of code units decoded |
dcharrresult | set to character decoded |
Returns:null on success, otherwise error message string
pure nothrow @nogc @safe string
utf_decodeWchar(const(wchar)[]
s, ref size_t
ridx, out dchar
rresult);
Decode a UTF-16 sequence as a single UTF-32 code point.
Parameters:const(wchar)[]s | UTF-16 sequence |
size_tridx | starting index in s[], updated to reflect number of code units decoded |
dcharrresult | set to character decoded |
Returns:null on success, otherwise error message string