module IStringBase: sig .. end
This module is not for general use, it it part of the internal
implementation of the IString module. Functions here all have an equivelent in
IString, where they are documented. Unless you are modifying the IString
module, you should use those functions instead of these.
type istring = internalised istring_
type temp_istring = temp istring_
type 'a istring_
type internalised
type temp
val empty' : temp_istring
val is_empty : 'a istring_ -> bool
val length : 'a istring_ -> int
val snoc' : 'a istring_ -> char -> temp_istring
val unsnoc' : 'a istring_ -> temp_istring * char
val temp_istring : 'a istring_ -> temp_istring
val equal : istring -> istring -> bool
val compare : istring -> istring -> int
val hash : 'a istring_ -> int
val get : 'a istring_ -> int -> char
val internalise : 'a istring_ -> istring
val all_istrings : unit -> istring list
val stats : unit -> int * int * int * int * int * int