Unicode String, in UTF8
A unicode string represented by a utf8 bytestring. This representation
is convenient for manipulating normal OCaml strings that are encoded
in UTF8.
We perform only basic decoding and encoding between codepoints and
bytestrings.
For more elaborate operations,
please use the excellent Uutf.
status: experimental
type 'a gen
= unit ‑> 'a option
type 'a sequence
= ('a ‑> unit) ‑> unit
val equal : t ‑> t ‑> bool
val compare : t ‑> t ‑> int
val pp : Format.formatter ‑> t ‑> unit
val to_string : t ‑> string
Generator of unicode codepoints.
- Parameter idx: offset where to start the decoding.
Sequence of unicode codepoints.
- Parameter idx: offset where to start the decoding.
val to_list : ?idx:int ‑> t ‑> uchar list
List of unicode codepoints.
- Parameter idx: offset where to start the decoding.
val fold : ?idx:int ‑> ('a ‑> uchar ‑> 'a) ‑> 'a ‑> t ‑> 'a
val iter : ?idx:int ‑> (uchar ‑> unit) ‑> t ‑> unit
val concat : t ‑> t list ‑> t
val of_string_exn : string ‑> t
Validate string by checking it is valid UTF8.
- Raises Invalid_argument: if the string is not valid UTF8.
val of_string : string ‑> t option
val is_valid : string ‑> bool
val unsafe_of_string : string ‑> t
Conversion from a string without validating.
Upon iteration, if an invalid substring is met, Malformed will be raised.