Frama-C API - String
Extension of OCaml's Stdlib.String module.
include module type of Stdlib.String
val make : int -> char -> stringval init : int -> (int -> char) -> stringval of_bytes : bytes -> stringval to_bytes : string -> bytesval length : string -> intval get : string -> int -> charval concat : string -> string list -> stringval cat : string -> string -> stringval equal : t -> t -> boolval compare : t -> t -> intval starts_with : prefix:string -> string -> boolval ends_with : suffix:string -> string -> boolval contains_from : string -> int -> char -> boolval rcontains_from : string -> int -> char -> boolval contains : string -> char -> boolval sub : string -> int -> int -> stringval split_on_char : char -> string -> string listval map : (char -> char) -> string -> stringval mapi : (int -> char -> char) -> string -> stringval fold_left : ('a -> char -> 'a) -> 'a -> string -> 'aval fold_right : (char -> 'a -> 'a) -> string -> 'a -> 'aval for_all : (char -> bool) -> string -> boolval exists : (char -> bool) -> string -> boolval trim : string -> stringval escaped : string -> stringval uppercase_ascii : string -> stringval lowercase_ascii : string -> stringval capitalize_ascii : string -> stringval uncapitalize_ascii : string -> stringval iter : (char -> unit) -> string -> unitval iteri : (int -> char -> unit) -> string -> unitval index_from : string -> int -> char -> intval index_from_opt : string -> int -> char -> int optionval rindex_from : string -> int -> char -> intval rindex_from_opt : string -> int -> char -> int optionval index : string -> char -> intval index_opt : string -> char -> int optionval rindex : string -> char -> intval rindex_opt : string -> char -> int optionval to_seq : t -> char Stdlib.Seq.tval to_seqi : t -> (int * char) Stdlib.Seq.tval of_seq : char Stdlib.Seq.t -> tval get_utf_8_uchar : t -> int -> Stdlib.Uchar.utf_decodeval is_valid_utf_8 : t -> boolval get_utf_16be_uchar : t -> int -> Stdlib.Uchar.utf_decodeval is_valid_utf_16be : t -> boolval get_utf_16le_uchar : t -> int -> Stdlib.Uchar.utf_decodeval is_valid_utf_16le : t -> boolval create : int -> bytesval set : bytes -> int -> char -> unitval blit : string -> int -> bytes -> int -> int -> unitval copy : string -> stringval fill : bytes -> int -> int -> char -> unitval uppercase : string -> stringval lowercase : string -> stringval capitalize : string -> stringval uncapitalize : string -> stringval get_uint8 : string -> int -> intval get_int8 : string -> int -> intval get_uint16_ne : string -> int -> intval get_uint16_be : string -> int -> intval get_uint16_le : string -> int -> intval get_int16_ne : string -> int -> intval get_int16_be : string -> int -> intval get_int16_le : string -> int -> intval get_int32_ne : string -> int -> int32val get_int32_be : string -> int -> int32val get_int32_le : string -> int -> int32val get_int64_ne : string -> int -> int64val get_int64_be : string -> int -> int64val get_int64_le : string -> int -> int64val unsafe_get : string -> int -> charval unsafe_set : bytes -> int -> char -> unitval unsafe_blit : string -> int -> bytes -> int -> int -> unitval unsafe_fill : bytes -> int -> int -> char -> unitval compare_ignore_case : string -> string -> intCase-insensitive string comparison. Only ISO-8859-1 accents are handled.
val remove_prefix : ?strict:bool -> string -> string -> string optionremove_prefix ~strict prefix s returns None if prefix is not a prefix of s and Some s' iff s=prefix^s'.
val remove_suffix : ?strict:bool -> string -> string -> string optionremove_suffix ~strict suffix s returns None if suffix is not a suffix of s and Some s' iff s=s'^suffix.
val utf8_escaped : string -> stringSame as String.escaped but for utf8 encoded strings. Unicode non ASCII characters are preserved unescaped.
val trim_underscores : string -> stringremove underscores at the beginning and end of a string. If a string is composed solely of underscores, return the empty string
val html_escape : string -> stringEscape string for use in HTML tag.
val percent_encode : string -> stringpercent_encode s returns the string s encoded so that it can be used as a path component in a HTML URL. All characters not on the list of unreserved characters in RFC3986 are percent-encoded. For instance the space character is converted to %20.
Cf. https://datatracker.ietf.org/doc/html/rfc3986#section-2.3 for the list of unreserved characters.