sig
type 'a t
external length : 'a BatString.Cap.t -> int = "%string_length"
val is_empty : 'a BatString.Cap.t -> bool
external get : [> `Read ] BatString.Cap.t -> int -> char
= "%string_safe_get"
external set : [> `Write ] BatString.Cap.t -> int -> char -> unit
= "%string_safe_set"
external create : int -> 'a BatString.Cap.t = "caml_create_string"
external of_string : Stdlib.Bytes.t -> 'a BatString.Cap.t = "%identity"
val of_bytes : Stdlib.Bytes.t -> 'a BatString.Cap.t
external to_string : [ `Read | `Write ] BatString.Cap.t -> Stdlib.Bytes.t
= "%identity"
external to_bytes : [ `Read | `Write ] BatString.Cap.t -> Stdlib.Bytes.t
= "%identity"
external read_only :
[> `Read ] BatString.Cap.t -> [ `Read ] BatString.Cap.t = "%identity"
external write_only :
[> `Write ] BatString.Cap.t -> [ `Write ] BatString.Cap.t = "%identity"
val make : int -> char -> 'a BatString.Cap.t
val init : int -> (int -> char) -> 'a BatString.Cap.t
val enum : [> `Read ] BatString.Cap.t -> char BatEnum.t
val of_enum : char BatEnum.t -> 'a BatString.Cap.t
val backwards : [> `Read ] BatString.Cap.t -> char BatEnum.t
val of_backwards : char BatEnum.t -> 'a BatString.Cap.t
val of_list : char list -> 'a BatString.Cap.t
val to_list : [> `Read ] BatString.Cap.t -> char list
val of_int : int -> 'a BatString.Cap.t
val of_float : float -> 'a BatString.Cap.t
val of_char : char -> 'a BatString.Cap.t
val to_int : [> `Read ] BatString.Cap.t -> int
val to_float : [> `Read ] BatString.Cap.t -> float
val map :
(char -> char) -> [> `Read ] BatString.Cap.t -> 'a BatString.Cap.t
val mapi :
(int -> char -> char) -> [> `Read ] BatString.Cap.t -> 'a BatString.Cap.t
val fold_left :
('a -> char -> 'a) -> 'a -> [> `Read ] BatString.Cap.t -> 'a
val fold_lefti :
('a -> int -> char -> 'a) -> 'a -> [> `Read ] BatString.Cap.t -> 'a
val fold_right :
(char -> 'a -> 'a) -> [> `Read ] BatString.Cap.t -> 'a -> 'a
val fold_righti :
(int -> char -> 'a -> 'a) -> [> `Read ] BatString.Cap.t -> 'a -> 'a
val filter :
(char -> bool) -> [> `Read ] BatString.Cap.t -> 'a BatString.Cap.t
val filter_map :
(char -> char option) -> [> `Read ] BatString.Cap.t -> 'a BatString.Cap.t
val iter : (char -> unit) -> [> `Read ] BatString.Cap.t -> unit
val index : [> `Read ] BatString.Cap.t -> char -> int
val rindex : [> `Read ] BatString.Cap.t -> char -> int
val index_from : [> `Read ] BatString.Cap.t -> int -> char -> int
val rindex_from : [> `Read ] BatString.Cap.t -> int -> char -> int
val contains : [> `Read ] BatString.Cap.t -> char -> bool
val contains_from : [> `Read ] BatString.Cap.t -> int -> char -> bool
val rcontains_from : [> `Read ] BatString.Cap.t -> int -> char -> bool
val find : [> `Read ] BatString.Cap.t -> [> `Read ] BatString.Cap.t -> int
val find_from :
[> `Read ] BatString.Cap.t -> int -> [> `Read ] BatString.Cap.t -> int
val rfind : [> `Read ] BatString.Cap.t -> [> `Read ] BatString.Cap.t -> int
val rfind_from :
[> `Read ] BatString.Cap.t -> int -> [> `Read ] BatString.Cap.t -> int
val ends_with :
[> `Read ] BatString.Cap.t -> [> `Read ] BatString.Cap.t -> bool
val starts_with :
[> `Read ] BatString.Cap.t -> [> `Read ] BatString.Cap.t -> bool
val exists :
[> `Read ] BatString.Cap.t -> [> `Read ] BatString.Cap.t -> bool
val count_char : [> `Read ] BatString.Cap.t -> char -> int
val lchop : ?n:int -> [> `Read ] BatString.Cap.t -> 'a BatString.Cap.t
val rchop : ?n:int -> [> `Read ] BatString.Cap.t -> 'a BatString.Cap.t
val chop :
?l:int -> ?r:int -> [> `Read ] BatString.Cap.t -> 'a BatString.Cap.t
val trim : [> `Read ] BatString.Cap.t -> 'a BatString.Cap.t
val quote : [> `Read ] BatString.Cap.t -> string
val left : [> `Read ] BatString.Cap.t -> int -> 'a BatString.Cap.t
val right : [> `Read ] BatString.Cap.t -> int -> 'a BatString.Cap.t
val head : [> `Read ] BatString.Cap.t -> int -> 'a BatString.Cap.t
val tail : [> `Read ] BatString.Cap.t -> int -> 'a BatString.Cap.t
val strip :
?chars:[> `Read ] BatString.Cap.t ->
[> `Read ] BatString.Cap.t -> 'a BatString.Cap.t
val uppercase : [> `Read ] BatString.Cap.t -> 'a BatString.Cap.t
val lowercase : [> `Read ] BatString.Cap.t -> 'a BatString.Cap.t
val capitalize : [> `Read ] BatString.Cap.t -> 'a BatString.Cap.t
val uncapitalize : [> `Read ] BatString.Cap.t -> 'a BatString.Cap.t
val copy : [> `Read ] BatString.Cap.t -> 'a BatString.Cap.t
val sub : [> `Read ] BatString.Cap.t -> int -> int -> 'a BatString.Cap.t
val fill : [> `Write ] BatString.Cap.t -> int -> int -> char -> unit
val blit :
[> `Read ] BatString.Cap.t ->
int -> [> `Write ] BatString.Cap.t -> int -> int -> unit
val concat :
[> `Read ] BatString.Cap.t ->
[> `Read ] BatString.Cap.t list -> 'a BatString.Cap.t
val escaped : [> `Read ] BatString.Cap.t -> 'a BatString.Cap.t
val replace_chars :
(char -> [> `Read ] BatString.Cap.t) ->
[> `Read ] BatString.Cap.t -> 'a BatString.Cap.t
val replace :
str:[> `Read ] BatString.Cap.t ->
sub:[> `Read ] BatString.Cap.t ->
by:[> `Read ] BatString.Cap.t -> bool * 'a BatString.Cap.t
val nreplace :
str:[> `Read ] BatString.Cap.t ->
sub:[> `Read ] BatString.Cap.t ->
by:[> `Read ] BatString.Cap.t -> 'a BatString.Cap.t
val repeat : [> `Read ] BatString.Cap.t -> int -> 'a BatString.Cap.t
val split :
[> `Read ] BatString.Cap.t ->
by:[> `Read ] BatString.Cap.t -> 'a BatString.Cap.t * 'b BatString.Cap.t
val rsplit :
[> `Read ] BatString.Cap.t ->
by:[> `Read ] BatString.Cap.t -> 'a BatString.Cap.t * 'b BatString.Cap.t
val nsplit :
[> `Read ] BatString.Cap.t ->
by:[> `Read ] BatString.Cap.t -> 'a BatString.Cap.t list
val splice :
[ `Read | `Write ] BatString.Cap.t ->
int -> int -> [> `Read ] BatString.Cap.t -> 'a BatString.Cap.t
val join :
[> `Read ] BatString.Cap.t ->
[> `Read ] BatString.Cap.t list -> 'a BatString.Cap.t
val slice :
?first:int ->
?last:int -> [> `Read ] BatString.Cap.t -> 'a BatString.Cap.t
val explode : [> `Read ] BatString.Cap.t -> char list
val implode : char list -> 'a BatString.Cap.t
val compare :
[> `Read ] BatString.Cap.t -> [> `Read ] BatString.Cap.t -> int
val icompare :
[> `Read ] BatString.Cap.t -> [> `Read ] BatString.Cap.t -> int
val print : 'a BatInnerIO.output -> [> `Read ] BatString.Cap.t -> unit
val println : 'a BatInnerIO.output -> [> `Read ] BatString.Cap.t -> unit
val print_quoted :
'a BatInnerIO.output -> [> `Read ] BatString.Cap.t -> unit
external unsafe_get : [> `Read ] BatString.Cap.t -> int -> char
= "%string_unsafe_get"
external unsafe_set : [> `Write ] BatString.Cap.t -> int -> char -> unit
= "%string_unsafe_set"
external unsafe_blit :
[> `Read ] BatString.Cap.t ->
int -> [> `Write ] BatString.Cap.t -> int -> int -> unit
= "caml_blit_string" [@@noalloc]
external unsafe_fill :
[> `Write ] BatString.Cap.t -> int -> int -> char -> unit
= "caml_fill_string" [@@noalloc]
module Exceptionless :
sig
val to_int : [> `Read ] BatString.Cap.t -> int option
val to_float : [> `Read ] BatString.Cap.t -> float option
val index : [> `Read ] BatString.Cap.t -> char -> int option
val rindex : [> `Read ] BatString.Cap.t -> char -> int option
val index_from :
[> `Read ] BatString.Cap.t -> int -> char -> int option
val rindex_from :
[> `Read ] BatString.Cap.t -> int -> char -> int option
val find :
[> `Read ] BatString.Cap.t ->
[> `Read ] BatString.Cap.t -> int option
val find_from :
[> `Read ] BatString.Cap.t ->
int -> [> `Read ] BatString.Cap.t -> int option
val rfind :
[> `Read ] BatString.Cap.t ->
[> `Read ] BatString.Cap.t -> int option
val rfind_from :
[> `Read ] BatString.Cap.t ->
int -> [> `Read ] BatString.Cap.t -> int option
val split :
[> `Read ] BatString.Cap.t ->
by:[> `Read ] BatString.Cap.t ->
('a BatString.Cap.t * 'b BatString.Cap.t) option
val rsplit :
[> `Read ] BatString.Cap.t ->
by:[> `Read ] BatString.Cap.t ->
('a BatString.Cap.t * 'b BatString.Cap.t) option
end
end