Up

module XString

: sig

eXtensible Unicode string. The semantics matches the description of UStorage. The detail may be going to change.

#
type xstring
#
type t = xstring
#
val get : xstring -> int -> UChar.t
#
val set : xstring -> int -> UChar.t -> unit
#
val length : xstring -> int
#
val init : int -> (int -> UChar.t) -> xstring
#
type index
#
val look : xstring -> index -> UChar.t
#
val nth : xstring -> int -> index
#
val first : xstring -> index
#
val last : xstring -> index
#
val out_of_range : xstring -> index -> bool
#
val next : xstring -> index -> index
#
val prev : xstring -> index -> index
#
val move : xstring -> index -> int -> index
#
val compare_index : xstring -> index -> index -> int
#
val make : ?bufsize:int -> int -> UChar.t -> xstring
#
val clear : xstring -> unit
#
val reset : xstring -> unit
#
val copy : xstring -> xstring
#
val sub : xstring -> int -> int -> xstring
#
val add_char : xstring -> UChar.t -> unit
#
val add_text : xstring -> 'a UText.text -> unit
#
val add_xstring : xstring -> xstring -> unit
#
val shrink : xstring -> int -> unit
#
val append : xstring -> xstring -> xstring
#
val utext_of : xstring -> UText.t
#
val ustring_of : xstring -> UText.ustring
#
val iter : (UChar.t -> unit) -> xstring -> unit
#
val compare : t -> t -> int
#
module Buf : sig
#
type buf
#
val create : int -> buf
#
val contents : buf -> t
#
val length : buf -> int
#
val clear : buf -> unit
#
val reset : buf -> unit
#
val add_char : buf -> UChar.t -> unit
#
val add_string : buf -> t -> unit
#
val add_buffer : buf -> buf -> unit
end
end