sig
  type t
  exception Out_of_range
  val char_of : Main.Type.UChar.t -> char
  val of_char : char -> Main.Type.UChar.t
  val code : Main.Type.UChar.t -> int
  val chr : int -> Main.Type.UChar.t
  external uint_code : Main.Type.UChar.t -> int = "%identity"
  val chr_of_uint : int -> Main.Type.UChar.t
  val eq : Main.Type.UChar.t -> Main.Type.UChar.t -> bool
  val compare : Main.Type.UChar.t -> Main.Type.UChar.t -> int
  type uchar = Main.Type.UChar.t
  val int_of : Main.Type.UChar.uchar -> int
  val of_int : int -> Main.Type.UChar.uchar
end