sig
  type t = UCharImpl.t
  type error = Unrepresentable_character of t | Invalid_character_code of int
  exception Exception of error
  val string_of_error : error -> string
  val of_char : char -> t
  val to_char : t -> char
  val to_char_noerr : t -> char
  val of_code : int -> t
  val to_code : t -> int
  val equal : t -> t -> bool
  val compare : t -> t -> int
  val hash : t -> int
  val is_letter : t -> bool
  val is_digit : t -> bool
  val is_letter_or_digit : t -> bool
  val is_space : t -> bool
  external to_camomile : t -> CamomileLibrary.UChar.t = "%identity"
  external of_camomile : CamomileLibrary.UChar.t -> t = "%identity"
end