function utf8_validate(str: ByteArray): [ok: Boolean, end: String] {
    // Gjs wrapper for g_utf8_validate()

Validates UTF-8 encoded text. str is the text to validate; if str is nul-terminated, then max_len can be -1, otherwise max_len should be the number of bytes to validate. If end is non-null, then the end of the valid range will be stored there (i.e. the start of the first invalid character if some bytes were invalid, or the end of the text being validated otherwise).

Note that GLib.utf8_validate returns false if max_len is positive and any of the max_len bytes are nul.

Returns true if all of str was valid. Many GLib and GTK+ routines require valid UTF-8 as input; so data read from a file or the network should be checked with GLib.utf8_validate before doing anything else with it.


a pointer to character data


true if the text was valid UTF-8


return location for end of valid data