Module UChar

module UChar: sig .. end

Unicode (ISO-UCS) characters.

This module implements Unicode (actually ISO-UCS) characters. All 31-bit code points are allowed.


type t 

Unicode characters. All 31-bit code points are allowed.

exception Out_of_range
val char_of : t -> char

char_of u returns the Latin-1 representation of u. If u can not be represented by Latin-1, raises Out_of_range

val of_char : char -> t

of_char c returns the Unicode character of the Latin-1 character c

val code : t -> int

code u returns the Unicode code number of u. If the value can not be represented by a positive integer, raise Out_of_range

val chr : int -> t

code n returns the Unicode character with the code number n. If n >= 2^32 or n < 0, raises invalid_arg

val uint_code : t -> int

uint_code u returns the Unicode code number of u. The returned int is unsigned, that is, on 32-bit platforms, the sign bit is used for storing the 31-th bit of the code number.

val chr_of_uint : int -> t

chr_of_uint n returns the Unicode character of the code number n. n is interpreted as unsigned, that is, on 32-bit platforms, the sign bit is treated as the 31-th bit of the code number. If n exceeds 31-bit values, then raise Invalid_arg.

val unsafe_chr_of_uint : int -> t

Unsafe version of UChar.chr_of_uint. No check of its argument is performed.

val eq : t -> t -> bool

Equality by code point comparison

val compare : t -> t -> int

compare u1 u2 returns, a value > 0 if u1 has a larger Unicode code number than u2, 0 if u1 and u2 are the same Unicode character, a value < 0 if u1 has a smaller Unicode code number than u2.

type uchar = t 

Aliases of type t

val int_of_uchar : uchar -> int

Alias of uint_code

val uchar_of_int : int -> uchar

Alias of chr_of_uint