include module type of struct include Astring.String end
val v : len:int -> (int -> char) -> string
val length : string -> int
val get : string -> int -> char
val get_byte : string -> int -> int
val unsafe_get : string -> int -> char
val unsafe_get_byte : string -> int -> int
val head : ?rev:bool -> string -> char option
val get_head : ?rev:bool -> string -> char
val append : string -> string -> string
val concat : ?sep:string -> string list -> string
val is_empty : string -> bool
val is_prefix : affix:string -> string -> bool
val is_infix : affix:string -> string -> bool
val is_suffix : affix:string -> string -> bool
val for_all : (char -> bool) -> string -> bool
val exists : (char -> bool) -> string -> bool
val equal : string -> string -> bool
val compare : string -> string -> int
val with_range : ?first:int -> ?len:int -> string -> string
val with_index_range : ?first:int -> ?last:int -> string -> string
val trim : ?drop:(char -> bool) -> string -> string
val span : ?rev:bool -> ?min:int -> ?max:int -> ?sat:(char -> bool) ->
string -> string * string
val take : ?rev:bool -> ?min:int -> ?max:int -> ?sat:(char -> bool) -> string -> string
val drop : ?rev:bool -> ?min:int -> ?max:int -> ?sat:(char -> bool) -> string -> string
val cut : ?rev:bool -> sep:string -> string -> (string * string) option
val cuts : ?rev:bool -> ?empty:bool -> sep:string -> string -> string list
val fields : ?empty:bool -> ?is_sep:(char -> bool) -> string -> string list
type sub = Astring.String.sub
val sub : ?start:int -> ?stop:int -> string -> sub
val sub_with_range : ?first:int -> ?len:int -> string -> sub
val sub_with_index_range : ?first:int -> ?last:int -> string -> sub
module Sub = Astring.String.Sub
val find : ?rev:bool -> ?start:int -> (char -> bool) -> string -> int option
val find_sub : ?rev:bool -> ?start:int -> sub:string -> string -> int option
val filter : (char -> bool) -> string -> string
val filter_map : (char -> char option) -> string -> string
val map : (char -> char) -> string -> string
val mapi : (int -> char -> char) -> string -> string
val fold_left : ('a -> char -> 'a) -> 'a -> string -> 'a
val fold_right : (char -> 'a -> 'a) -> string -> 'a -> 'a
val iter : (char -> unit) -> string -> unit
val iteri : (int -> char -> unit) -> string -> unit
val uniquify : string list -> string list
module Ascii = Astring.String.Ascii
val pp : Stdlib.Format.formatter -> string -> unit
val dump : Stdlib.Format.formatter -> string -> unit
type set = Astring.String.set
module Set = Astring.String.Set
module Map = Astring.String.Map
val of_char : char -> string
val to_char : string -> char option
val of_bool : bool -> string
val to_bool : string -> bool option
val of_int : int -> string
val to_int : string -> int option
val of_nativeint : nativeint -> string
val to_nativeint : string -> nativeint option
val of_int32 : int32 -> string
val to_int32 : string -> int32 option
val of_int64 : int64 -> string
val to_int64 : string -> int64 option
val of_float : float -> string
val to_float : string -> float option