This module extends Base.String
.
include sig ... end
val bin_t : t Bin_prot.Type_class.t
val bin_read_t : t Bin_prot.Read.reader
val __bin_read_t__ : (int ‑> t) Bin_prot.Read.reader
val bin_reader_t : t Bin_prot.Type_class.reader
val bin_size_t : t Bin_prot.Size.sizer
val bin_write_t : t Bin_prot.Write.writer
val bin_writer_t : t Bin_prot.Type_class.writer
val bin_shape_t : Bin_prot.Shape.t
val typerep_of_t : t Typerep_lib.Std.Typerep.t
val typename_of_t : t Typerep_lib.Std.Typename.t
module Caseless : sig ... end
include module type of sig ... end with type t := t with module Caseless := Base.String.Caseless
module Caseless = Base__String.Caseless
val unsafe_blit : (t, bytes) Base.Blit.blit
val sub : (t, t) Base.Blit.sub
val subo : (t, t) Base.Blit.subo
val fold_result : t ‑> init:'accum ‑> f:('accum ‑> elt ‑> ('accum, 'e) Base.Result.t) ‑> ('accum, 'e) Base.Result.t
val fold_until : t ‑> init:'accum ‑> f:('accum ‑> elt ‑> ('accum, 'final) Base__.Container_intf.Continue_or_stop.t) ‑> finish:('accum ‑> 'final) ‑> 'final
val sum : (module Base.Commutative_group.S with type t = 'sum) ‑> t ‑> f:(elt ‑> 'sum) ‑> 'sum
val hash_fold_t : Base.Hash.state ‑> t ‑> Base.Hash.state
val t_of_sexp : Base.Sexp.t ‑> t
val sexp_of_t : t ‑> Base.Sexp.t
val of_string : string ‑> t
val to_string : t ‑> string
val clamp : t ‑> min:t ‑> max:t ‑> t Base.Or_error.t
val comparator : (t, comparator_witness) Base.Comparator.comparator
val validate_lbound : min:t Base.Maybe_bound.t ‑> t Base.Validate.check
val validate_ubound : max:t Base.Maybe_bound.t ‑> t Base.Validate.check
val validate_bound : min:t Base.Maybe_bound.t ‑> max:t Base.Maybe_bound.t ‑> t Base.Validate.check
val pp : Base.Formatter.t ‑> t ‑> unit
external length : t ‑> int = "%string_length"
external get : t ‑> int ‑> char = "%string_safe_get"
val make : int ‑> char ‑> t
val init : int ‑> f:(int ‑> char) ‑> t
val fill : bytes ‑> pos:int ‑> len:int ‑> char ‑> unit
val contains : ?pos:int ‑> ?len:int ‑> t ‑> char ‑> bool
val index : t ‑> char ‑> int option
val index_exn : t ‑> char ‑> int
val rindex : t ‑> char ‑> int option
val rindex_exn : t ‑> char ‑> int
val index_from : t ‑> int ‑> char ‑> int option
val index_from_exn : t ‑> int ‑> char ‑> int
val rindex_from : t ‑> int ‑> char ‑> int option
val rindex_from_exn : t ‑> int ‑> char ‑> int
val to_list_rev : t ‑> char list
val lfindi : ?pos:int ‑> t ‑> f:(int ‑> char ‑> bool) ‑> int option
val rfindi : ?pos:int ‑> t ‑> f:(int ‑> char ‑> bool) ‑> int option
val foldi : t ‑> init:'a ‑> f:(int ‑> 'a ‑> char ‑> 'a) ‑> 'a
val tr_inplace : target:char ‑> replacement:char ‑> bytes ‑> unit
external hash : t ‑> int = "Base_hash_string"
val is_empty : t ‑> bool
val of_char : char ‑> t
val of_char_list : char list ‑> t
module Escaping = Base__String.Escaping
slice t start stop
returns a new string including elements t.(start)
through
t.(stop-1)
, normalized Python-style with the exception that stop = 0
is treated as
stop = length t
.
take_while s ~f
returns the longest prefix of s
satisfying for_all prefix ~f
(See lstrip
to drop such a prefix)
rtake_while s ~f
returns the longest suffix of s
satisfying for_all suffix ~f
(See rstrip
to drop such a suffix)
include Core_kernel.Identifiable.S with type t := t and type comparator_witness := comparator_witness
include sig ... end
val bin_t : t Bin_prot.Type_class.t
val bin_read_t : t Bin_prot.Read.reader
val __bin_read_t__ : (Core_kernel__.Import.int ‑> t) Bin_prot.Read.reader
val bin_reader_t : t Bin_prot.Type_class.reader
val bin_size_t : t Bin_prot.Size.sizer
val bin_write_t : t Bin_prot.Write.writer
val bin_writer_t : t Bin_prot.Type_class.writer
val bin_shape_t : Bin_prot.Shape.t
val hash_fold_t : Base.Hash.state ‑> t ‑> Base.Hash.state
val hash : t ‑> Base.Hash.hash_value
val t_of_sexp : Base.Sexp.t ‑> t
val sexp_of_t : t ‑> Base.Sexp.t
include Core_kernel.Identifiable.S_common with type t := t
include sig ... end
val compare : t ‑> t ‑> Core_kernel__.Import.int
val hash_fold_t : Base.Hash.state ‑> t ‑> Base.Hash.state
val hash : t ‑> Base.Hash.hash_value
val sexp_of_t : t ‑> Base.Sexp.t
include Core_kernel__.Import.Stringable.S with type t := t
val of_string : string ‑> t
val to_string : t ‑> string
include Core_kernel__.Import.Pretty_printer.S with type t := t
val pp : Base.Formatter.t ‑> t ‑> unit
include Core_kernel.Comparable.S_binable with type t := t
include Core_kernel__.Comparable_intf.S_common
include Base.Comparable.S
include Base__.Comparable_intf.Polymorphic_compare
ascending
is identical to compare
. descending x y = ascending y x
. These are
intended to be mnemonic when used like List.sort ~compare:ascending
and List.sort
~cmp:descending
, since they cause the list to be sorted in ascending or descending
order, respectively.
clamp_exn t ~min ~max
returns t'
, the closest value to t
such that
between t' ~low:min ~high:max
is true.
Raises if not (min <= max)
.
val clamp : t ‑> min:t ‑> max:t ‑> t Base.Or_error.t
include Base.Comparator.S with type t := t
val comparator : (t, comparator_witness) Base.Comparator.comparator
include Base__.Comparable_intf.Validate with type t := t
val validate_lbound : min:t Base.Maybe_bound.t ‑> t Base.Validate.check
val validate_ubound : max:t Base.Maybe_bound.t ‑> t Base.Validate.check
val validate_bound : min:t Base.Maybe_bound.t ‑> max:t Base.Maybe_bound.t ‑> t Base.Validate.check
module Replace_polymorphic_compare : Core_kernel__.Comparable_intf.Polymorphic_compare with type t := t
include Core_kernel__.Comparable_intf.Map_and_set_binable with type t := t with type comparator_witness := comparator_witness
include Core_kernel.Comparator.S with type t := t
val comparator : (t, comparator_witness) Core_kernel.Comparator.comparator
module Map : Core_kernel.Map.S_binable with type Key.t = t with type Key.comparator_witness = comparator_witness
module Set : Core_kernel.Set.S_binable with type Elt.t = t with type Elt.comparator_witness = comparator_witness
include Core_kernel.Hashable.S_binable with type t := t
include sig ... end
val hash_fold_t : Base.Hash.state ‑> t ‑> Base.Hash.state
val hash : t ‑> Base.Hash.hash_value
val hashable : t Core_kernel.Hashtbl.Hashable.t
module Table : Core_kernel.Hashtbl.S_binable with type key = t
module Hash_set : Core_kernel.Hash_set.S_binable with type elt = t
module Hash_queue : Core_kernel.Hash_queue.S with type Key.t = t
val gen' : char Core_kernel.Quickcheck.Generator.t ‑> t Core_kernel.Quickcheck.Generator.t
Like gen
, but generate strings with the given distribution of characters.
val gen_with_length : int ‑> char Core_kernel.Quickcheck.Generator.t ‑> t Core_kernel.Quickcheck.Generator.t
Like gen'
, but generate strings with the given length.
module Stable : sig ... end
Note that string
is already stable by itself, since as a primitive type it is an
integral part of the sexp / bin_io protocol. String.Stable
exists only to introduce
String.Stable.Set
and String.Stable.Map
, and provide interface uniformity with
other stable types.