diff options
| author | Maxence Guesdon <maxence.guesdon@inria.fr> | 2001-12-03 22:16:03 +0000 |
|---|---|---|
| committer | Maxence Guesdon <maxence.guesdon@inria.fr> | 2001-12-03 22:16:03 +0000 |
| commit | ef3d334d4a207ad31d9c7f74f4cc3d5259047e49 (patch) | |
| tree | 45ac1116188ad95167b4c2d621fac2241d2ce9a1 /stdlib/stringLabels.mli | |
| parent | 966c128bc96118fb12c753c01bf5f134c888e61a (diff) | |
| download | ocaml-ef3d334d4a207ad31d9c7f74f4cc3d5259047e49.tar.gz | |
commentaires après
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@4083 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
Diffstat (limited to 'stdlib/stringLabels.mli')
| -rw-r--r-- | stdlib/stringLabels.mli | 57 |
1 files changed, 28 insertions, 29 deletions
diff --git a/stdlib/stringLabels.mli b/stdlib/stringLabels.mli index d00c6fd314..b7a83d116d 100644 --- a/stdlib/stringLabels.mli +++ b/stdlib/stringLabels.mli @@ -14,53 +14,55 @@ (** String operations. *) -(** Return the length (number of characters) of the given string. *) external length : string -> int = "%string_length" +(** Return the length (number of characters) of the given string. *) +external get : string -> int -> char = "%string_safe_get" (** [String.get s n] returns character number [n] in string [s]. The first character is character number 0. The last character is character number [String.length s - 1]. Raise [Invalid_argument] if [n] is outside the range 0 to [(String.length s - 1)]. You can also write [s.[n]] instead of [String.get s n]. *) -external get : string -> int -> char = "%string_safe_get" +external set : string -> int -> char -> unit = "%string_safe_set" (** [String.set s n c] modifies string [s] in place, replacing the character number [n] by [c]. Raise [Invalid_argument] if [n] is outside the range 0 to [(String.length s - 1)]. You can also write [s.[n] <- c] instead of [String.set s n c]. *) -external set : string -> int -> char -> unit = "%string_safe_set" +external create : int -> string = "create_string" (** [String.create n] returns a fresh string of length [n]. The string initially contains arbitrary characters. Raise [Invalid_argument] if [n < 0] or [n > Sys.max_string_length]. *) -external create : int -> string = "create_string" +val make : int -> char -> string (** [String.make n c] returns a fresh string of length [n], filled with the character [c]. Raise [Invalid_argument] if [n < 0] or [n > ]{!Sys.max_string_length}.*) -val make : int -> char -> string -(** Return a copy of the given string. *) val copy : string -> string +(** Return a copy of the given string. *) +val sub : string -> pos:int -> len:int -> string (** [String.sub s start len] returns a fresh string of length [len], containing the characters number [start] to [start + len - 1] of string [s]. Raise [Invalid_argument] if [start] and [len] do not designate a valid substring of [s]; that is, if [start < 0], or [len < 0], or [start + len > ]{!StringLabels.length}[ s]. *) -val sub : string -> pos:int -> len:int -> string +val fill : string -> pos:int -> len:int -> char -> unit (** [String.fill s start len c] modifies string [s] in place, replacing the characters number [start] to [start + len - 1] by [c]. Raise [Invalid_argument] if [start] and [len] do not designate a valid substring of [s]. *) -val fill : string -> pos:int -> len:int -> char -> unit +val blit : + src:string -> src_pos:int -> dst:string -> dst_pos:int -> len:int -> unit (** [String.blit src srcoff dst dstoff len] copies [len] characters from string [src], starting at character number [srcoff], to string [dst], starting at character number [dstoff]. It works @@ -69,77 +71,75 @@ val fill : string -> pos:int -> len:int -> char -> unit Raise [Invalid_argument] if [srcoff] and [len] do not designate a valid substring of [src], or if [dstoff] and [len] do not designate a valid substring of [dst]. *) -val blit : src:string -> src_pos:int -> - dst:string -> dst_pos:int -> len:int -> unit +val concat : sep:string -> string list -> string (** [String.concat sep sl] catenates the list of strings [sl], inserting the separator string [sep] between each. *) -val concat : sep:string -> string list -> string +val iter : f:(char -> unit) -> string -> unit (** [String.iter f s] applies function [f] in turn to all the characters of [s]. It is equivalent to [f s.(0); f s.(1); ...; f s.(String.length s - 1); ()]. *) -val iter : f:(char -> unit) -> string -> unit +val escaped : string -> string (** Return a copy of the argument, with special characters represented by escape sequences, following the lexical conventions of Objective Caml. If there is no special character in the argument, return the original string itself, not a copy. *) -val escaped: string -> string +val index : string -> char -> int (** [String.index s c] returns the position of the leftmost occurrence of character [c] in string [s]. Raise [Not_found] if [c] does not occur in [s]. *) -val index: string -> char -> int +val rindex : string -> char -> int (** [String.rindex s c] returns the position of the rightmost occurrence of character [c] in string [s]. Raise [Not_found] if [c] does not occur in [s]. *) -val rindex: string -> char -> int +val index_from : string -> int -> char -> int (** Same as {!StringLabels.index}, but start searching at the character position given as second argument. [String.index s c] is equivalent to [String.index_from s 0 c].*) -val index_from: string -> int -> char -> int +val rindex_from : string -> int -> char -> int (** Same as {!StringLabels.rindex}, but start searching at the character position given as second argument. [String.rindex s c] is equivalent to [String.rindex_from s (String.length s - 1) c]. *) -val rindex_from: string -> int -> char -> int +val contains : string -> char -> bool (** [String.contains s c] tests if character [c] appears in the string [s]. *) -val contains : string -> char -> bool +val contains_from : string -> int -> char -> bool (** [String.contains_from s start c] tests if character [c] appears in the substring of [s] starting from [start] to the end of [s]. Raise [Invalid_argument] if [start] is not a valid index of [s]. *) -val contains_from : string -> int -> char -> bool +val rcontains_from : string -> int -> char -> bool (** [String.rcontains_from s stop c] tests if character [c] appears in the substring of [s] starting from the beginning of [s] to index [stop]. Raise [Invalid_argument] if [stop] is not a valid index of [s]. *) -val rcontains_from : string -> int -> char -> bool +val uppercase : string -> string (** Return a copy of the argument, with all lowercase letters translated to uppercase, including accented letters of the ISO Latin-1 (8859-1) character set. *) -val uppercase: string -> string +val lowercase : string -> string (** Return a copy of the argument, with all uppercase letters translated to lowercase, including accented letters of the ISO Latin-1 (8859-1) character set. *) -val lowercase: string -> string +val capitalize : string -> string (** Return a copy of the argument, with the first letter set to uppercase. *) -val capitalize: string -> string +val uncapitalize : string -> string (** Return a copy of the argument, with the first letter set to lowercase. *) -val uncapitalize: string -> string (**/**) @@ -147,8 +147,7 @@ val uncapitalize: string -> string external unsafe_get : string -> int -> char = "%string_unsafe_get" external unsafe_set : string -> int -> char -> unit = "%string_unsafe_set" external unsafe_blit : - src:string -> src_pos:int -> - dst:string -> dst_pos:int -> len:int -> unit - = "blit_string" "noalloc" -external unsafe_fill : string -> pos:int -> len:int -> char -> unit - = "fill_string" "noalloc" + src:string -> src_pos:int -> dst:string -> dst_pos:int -> len:int -> + unit = "blit_string" "noalloc" +external unsafe_fill : + string -> pos:int -> len:int -> char -> unit = "fill_string" "noalloc" |
