sig
  type buf
  val create : int -> UCS4.Buf.buf
  val contents : UCS4.Buf.buf -> UCS4.t
  val clear : UCS4.Buf.buf -> unit
  val reset : UCS4.Buf.buf -> unit
  val add_char : UCS4.Buf.buf -> UChar.t -> unit
  val add_string : UCS4.Buf.buf -> UCS4.t -> unit
  val add_buffer : UCS4.Buf.buf -> UCS4.Buf.buf -> unit
end