Unicode.utf8GetCharValidated

Convert a sequence of bytes encoded as UTF-8 to a Unicode character. This function checks for incomplete characters, for invalid characters such as characters that are out of the range of Unicode, and for overlong encodings of valid characters.

Note that g_utf8_get_char_validated() returns (gunichar)-2 if max_len is positive and any of the bytes in the first UTF-8 character sequence are nul.

struct Unicode
static
dchar
utf8GetCharValidated
(
string p
,
ptrdiff_t maxLen
)

Parameters

p string

a pointer to Unicode character encoded as UTF-8

maxLen ptrdiff_t

the maximum number of bytes to read, or -1 if p is nul-terminated

Return Value

Type: dchar

the resulting character. If p points to a partial sequence at the end of a string that could begin a valid character (or if max_len is zero), returns (gunichar)-2; otherwise, if p does not point to a valid UTF-8 encoded Unicode character, returns (gunichar)-1.