Module CCStringLabels.Sub

type t = string * int * int

A string, an offset, and the length of the slice.

val make : string -> pos:int -> len:int -> t
val full : string -> t

Full string.

val copy : t -> string

Make a copy of the substring.

val underlying : t -> string
val sub : t -> int -> int -> t

Sub-slice.

val get : t -> int -> char

get s i gets the i-th element, or fails.

raises Invalid_argument

if the index is not within 0 ... length - 1.

since
1.2
include S with type t := t
type t
val length : t -> int

Return the length (number of characters) of the given string.

val blit : src:t -> src_pos:int -> dst:Stdlib.Bytes.t -> dst_pos:int -> len:int -> unit

Like String.blit. Compatible with the -safe-string option.

raises Invalid_argument

if indices are not valid.

val fold : f:('a -> char -> 'a) -> init:'a -> t -> 'a

Fold on chars by increasing index.

since
0.7

Conversions

val to_gen : t -> char gen

Return the gen of characters contained in the string.

val to_seq : t -> char sequence

Return the sequence of characters contained in the string.

val to_klist : t -> char klist

Return the klist of characters contained in the string.

val to_list : t -> char list

Return the list of characters contained in the string.

val pp_buf : Stdlib.Buffer.t -> t -> unit

Renamed from pp since 2.0.

val pp : Stdlib.Format.formatter -> t -> unit

Print the string within quotes.

Renamed from print since 2.0.