sig   module Make :     functor (S : Api.MINIMALISTIC_MUTABLE_STRING->       sig         type character = S.character         type t         val max_string_length : int option         val empty : t         val is_empty : t -> bool         val make : int -> character -> t         val length : t -> int         val of_character : character -> t         val of_character_list : character list -> t         val to_character_list : t -> character list         val get : t -> index:int -> character option         val set : t -> index:int -> v:character -> t option         val get_exn : t -> index:int -> character         val set_exn : t -> index:int -> v:character -> t         val concat : ?sep:t -> t list -> t         val of_native_string :           string -> (t, [> `wrong_char_at of int ]) Api.result         val of_native_substring :           string ->           offset:int ->           length:int ->           (t, [> `out_of_bounds | `wrong_char_at of int ]) Api.result         val to_native_string : t -> string         val to_string_hum : t -> string         val fold : t -> init:'-> f:('-> character -> 'a) -> 'a         val foldi : t -> init:'-> f:(int -> '-> character -> 'a) -> 'a         val fold2_exn :           t -> t -> init:'-> f:('-> character -> character -> 'a) -> 'a         val compare : t -> t -> int         val sub : t -> index:int -> length:int -> t option         val sub_exn : t -> index:int -> length:int -> t         val slice : ?start:int -> ?finish:int -> t -> t option         val slice_exn : ?start:int -> ?finish:int -> t -> t         val is_prefix : t -> prefix:t -> bool         val is_suffix : t -> suffix:t -> bool         val chop_prefix_exn : t -> prefix:t -> t         val chop_prefix : t -> prefix:t -> t option         val chop_suffix_exn : t -> suffix:t -> t         val chop_suffix : t -> suffix:t -> t option         val split_at : t -> index:int -> t * t         val take : t -> index:int -> t         val drop : t -> index:int -> t         val compare_substring : t * int * int -> t * int * int -> int         val compare_substring_strict :           t * int * int -> t * int * int -> int option         val iter : t -> f:(character -> unit) -> unit         val iteri : t -> f:(int -> character -> unit) -> unit         val iter_reverse : t -> f:(character -> unit) -> unit         val rev : t -> t         val map : t -> f:(character -> character) -> t         val mapi : t -> f:(int -> character -> character) -> t         val map2_exn : t -> t -> f:(character -> character -> character) -> t         val for_all : t -> f:(character -> bool) -> bool         val exists : t -> f:(character -> bool) -> bool         val take_while : t -> f:(character -> bool) -> t         val take_while_with_index : t -> f:(int -> character -> bool) -> t         val index_of_character : t -> ?from:int -> character -> int option         val index_of_character_reverse :           t -> ?from:int -> character -> int option         val index_of_string :           ?from:int ->           ?sub_index:int -> ?sub_length:int -> t -> sub:t -> int option         val index_of_string_reverse :           ?from:int ->           ?sub_index:int -> ?sub_length:int -> t -> sub:t -> int option         val find :           ?from:int ->           ?length:int -> t -> f:(character -> bool) -> int option         val find_reverse :           ?from:int ->           ?length:int -> t -> f:(character -> bool) -> int option         val filter_map :           ?from:int ->           ?length:int -> t -> f:(character -> character option) -> t         val filter :           ?from:int -> ?length:int -> t -> f:(character -> bool) -> t         val split :           t -> on:[ `Character of character | `String of t ] -> t list         val strip :           ?on:[ `Both | `Left | `Right ] ->           ?whitespace:(character -> bool) -> t -> t         module Make_output :           functor (Model : Api.OUTPUT_MODEL->             sig               val output :                 ('a, 'b, 'c) Model.channel ->                 t -> (unit, 'e, 'f) Model.thread             end       end end