module Uchar: Uchar;
type t;
The type for Unicode characters.
A value of this type represents a Unicode
scalar
value which is an integer in the ranges 0x0000
...0xD7FF
or
0xE000
...0x10FFFF
.
let min: t;
min
is U+0000.
let max: t;
max
is U+10FFFF.
let bom: t;
bom
is U+FEFF, the
byte order mark (BOM)
character.
let rep: t;
rep
is U+FFFD, the
replacement
character.
let succ: t => t;
succ u
is the scalar value after u
in the set of Unicode scalar
values.
Invalid_argument
if u
is Uchar.max
.let pred: t => t;
pred u
is the scalar value before u
in the set of Unicode scalar
values.
Invalid_argument
if u
is Uchar.min
.let is_valid: int => bool;
is_valid n
is true
if and only if n
is a Unicode scalar value
(i.e. in the ranges 0x0000
...0xD7FF
or 0xE000
...0x10FFFF
).
let of_int: int => t;
of_int i
is i
as a Unicode character.
Invalid_argument
if i
does not satisfy Uchar.is_valid
.let to_int: t => int;
to_int u
is u
as an integer.
let is_char: t => bool;
is_char u
is true
if and only if u
is a latin1 OCaml character.
let of_char: char => t;
of_char c
is c
as a Unicode character.
let to_char: t => char;
to_char u
is u
as an OCaml latin1 character.
Invalid_argument
if u
does not satisfy Uchar.is_char
.let equal: (t, t) => bool;
equal u u'
is u = u'
.
let compare: (t, t) => int;
compare u u'
is Stdlib.compare u u'
.
let hash: t => int;
hash u
associates a non-negative integer to u
.