OCaml interface to GTK+3
Module Glib . Utf8
val validate : string -> bool

If you read an UTF-8 string from somewhere, you should validate it, or risk random segmentation faults

val length : string -> int
val from_unichar : unichar -> string

from_unichar 0xiii converts a code point iii (usually in hexadecimal form) into a string containing the UTF-8 encoded character 0xiii. See for charmaps. Does not check that the given code point is a valid unicode point.

val from_unistring : unistring -> string
val to_unichar_validated : string -> pos:int ref -> unichar

to_unichar_validated decodes an UTF-8 encoded code point and checks for incomplete characters, invalid characters and overlong encodings.

  • raises Convert.Error

    if invalid

val to_unichar : string -> pos:int ref -> unichar

to_unichar decodes an UTF-8 encoded code point. Result is undefined if pos does not point to a valid UTF-8 encoded character.

val to_unistring : string -> unistring

to_unistring decodes an UTF-8 encoded string into an array of unichar. The string must be valid.

val first_char : string -> unichar
val offset_to_pos : string -> pos:int -> off:int -> int
type normalize_mode = [
| `ALL
val normalize : string -> normalize_mode -> string
val uppercase : string -> string
val lowercase : string -> string
val casefold : string -> string
val collate : string -> string -> int
val collate_key : string -> string