sig   type t = rope   val get : t -> int -> CamomileLibrary.UChar.t   val init : int -> (int -> CamomileLibrary.UChar.t) -> t   val length : t -> int   type index = Zip.t   val look : t -> index -> CamomileLibrary.UChar.t   val nth : t -> int -> index   val next : t -> index -> index   val prev : t -> index -> index   val out_of_range : t -> index -> bool   val iter : (CamomileLibrary.UChar.t -> unit) -> t -> unit   val compare : t -> t -> int   val first : t -> index   val last : t -> index   val move : t -> index -> int -> index   val compare_index : t -> index -> index -> int   module Buf :     sig       type buf       val create : int -> buf       val contents : buf -> t       val clear : buf -> unit       val reset : buf -> unit       val add_char : buf -> CamomileLibrary.UChar.t -> unit       val add_string : buf -> t -> unit       val add_buffer : buf -> buf -> unit     end end