Module BC_String


module BC_String: sig  end
An extention of the standard String module. Inherits all functions from String with a few more functions of our own.
Author(s): Hideo Bannai

val init : int -> (int -> char) -> string
Init for string.
val to_list : string -> char list
convert each character of the string to a list of characters
val of_list : char list -> string
return a fresh string from a list of characters
val to_array : string -> char array
convert each character of the string to a fresh array of characters
val of_array : char array -> string
return a fresh string from an array of characters
val map : (char -> char) -> string -> string
apply function char -> char to each element of string, and return a string
val map_to_list : (char -> 'a) -> string -> 'a list
apply a function to each char of a string, and return the result as a list
val map_to_array : (char -> 'a) -> string -> 'a array
apply a function to each char of a string, and return the result as an array
val map_from_list : ('a -> char) -> 'a list -> string
apply a function 'a -> char to each element of a list, and return the result as a string
val map_from_array : ('a -> char) -> 'a array -> string
apply a function 'a -> char to each element of array, and return the result as a string
val rev : string -> string
reverse a string
val substrings : string -> int -> int -> int -> string list
substrings str pos len sublen generates all substrings whose lengths are sublen from str. The cutting part of str is specified by start position pos and length len. Raise Invalid_argument if an invalid argument are specified.
val trim : string -> string
trim str removes all white spaces in both ends of given string.
val find : string -> string -> int -> int
find str pat pos searches string pat in str, then return the position at which pat is found. Raise Not_found if pat is not found.

Reversed functions. Same as the above functions without the rev_ prefix, except that the result is in reverse order

val rev_of_list : char list -> string
val rev_to_list : string -> char list
val rev_of_array : char array -> string
val rev_to_array : string -> char array
val rev_map : (char -> char) -> string -> string
val rev_map_to_list : (char -> 'a) -> string -> 'a list
val rev_map_to_array : (char -> 'a) -> string -> 'a array
val rev_map_from_list : ('a -> char) -> 'a list -> string
val rev_map_from_array : ('a -> char) -> 'a array -> string
val rev_substrings : string -> int -> int -> int -> string list
val fold_left : ('a -> char -> 'a) -> 'a -> string -> 'a
a fold_left for string. fold_left f init str calculates (f ... (f (f init str.[0]) str.[1]) ... str.[l-1]) where l is the length of str.
val foldi_left : (int -> 'a -> char -> 'a) -> 'a -> string -> 'a
same as fold_left, but the function is applied to the index of the element as first argument, the cummulative value as the second argument, and the element itself as the third argument.
val fold_right : (char -> 'a -> 'a) -> string -> 'a -> 'a
a fold_left for string. fold_right f str init calculates (f str.[0] (f str.[1] ( ... (f str.[l-1] init) ... ))) where l is the length of str.
val foldi_right : (int -> char -> 'a -> 'a) -> string -> 'a -> 'a
same as fold_right, but the function is applied to the index of the element as first argument, and the element itself as the second argument, and the cumulative value as the thir argument.
val iteri : (int -> char -> unit) -> string -> unit
an iteri for string. Same as BC_String.iter, but the function is applied to the index of the element as first argument, and the element itself as second argument.
val filter : (char -> bool) -> string -> string
filter f str returns a new string whose characters return true with respect to f : char -> bool
val for_all : (char -> bool) -> string -> bool
Checks if all elements of the string satisfy the predicate `p'. That is, it returns `(p a1) && (p a2) && ... && (p an)'.


The following are functions of the standard String module. See the OCaml manual for documentation.


val length : string -> int
val get : string -> int -> char
val set : string -> int -> char -> unit
val create : int -> string
val make : int -> char -> string
val copy : string -> string
val sub : string -> int -> int -> string
val fill : string -> int -> int -> char -> unit
val blit : string -> int -> string -> int -> int -> unit
val concat : string -> string list -> string
val iter : (char -> unit) -> string -> unit
val escaped : string -> string
val index : string -> char -> int
val rindex : string -> char -> int
val index_from : string -> int -> char -> int
val rindex_from : string -> int -> char -> int
val contains : string -> char -> bool
val contains_from : string -> int -> char -> bool
val rcontains_from : string -> int -> char -> bool
val uppercase : string -> string
val lowercase : string -> string
val capitalize : string -> string
val uncapitalize : string -> string
val unsafe_get : string -> int -> char
val unsafe_set : string -> int -> char -> unit
val unsafe_blit : string -> int -> string -> int -> int -> unit
val unsafe_fill : string -> int -> int -> char -> unit