Spec-Zone.ru › OCaml

Модуль Uchar

module Uchar: sig .. end

Символы Unicode.

  • Начиная с версии 4.03
type t 

Тип для символов Unicode.

Значение этого типа представляет собой скалярное значение Unicode, которое является целым числом из диапазонов 0x0000...0xD7FF или 0xE000...0x10FFFF.

val min : t

min — это U+0000.

val max : t

max — это U+10FFFF.

val bom : t

bom — это U+FEFF, символ метки порядка байтов (BOM).

  • Начиная с версии 4.06
val rep : t

rep — это U+FFFD, символ замены.

  • Начиная с версии 4.06
val succ : t -> t

succ u — это скалярное значение, следующее за u в множестве скалярных значений Unicode.

  • Вызывает исключение Invalid_argument, если u — это Uchar.max.
val pred : t -> t

pred u — это скалярное значение, предшествующее u в множестве скалярных значений Unicode.

  • Вызывает исключение Invalid_argument, если u — это Uchar.min.
val is_valid : int -> bool

is_valid n равно true тогда и только тогда, когда n является скалярным значением Unicode (то есть принадлежит диапазонам 0x0000...0xD7FF или 0xE000...0x10FFFF).

val of_int : int -> t

of_int i — это i в качестве символа Unicode.

  • Вызывает исключение Invalid_argument, если i не удовлетворяет условию Uchar.is_valid.
val to_int : t -> int

to_int u — это u в качестве целого числа.

val is_char : t -> bool

is_char u равно true тогда и только тогда, когда u является символом OCaml в кодировке Latin-1.

val of_char : char -> t

of_char c — это c в качестве символа Unicode.

val to_char : t -> char

to_char u — это u в качестве символа OCaml в кодировке Latin-1.

  • Вызывает исключение Invalid_argument, если u не удовлетворяет условию Uchar.is_char.
val equal : t -> t -> bool

equal u u' — это u = u'.

val compare : t -> t -> int

compare u u' — это Stdlib.compare u u'.

val seeded_hash : int -> t -> int

seeded_hash seed u Функция хеширования с начальным значением, возвращающая то же значение, что и Hashtbl.seeded_hash. Эта функция позволяет передавать данный модуль в качестве аргумента функтору Hashtbl.MakeSeeded.

  • Начиная с версии 5.3
val hash : t -> int

Функция хеширования без начального значения, возвращающая то же значение, что и Hashtbl.hash. Эта функция позволяет передавать данный модуль в качестве аргумента функтору Hashtbl.Make.

  • До версии 5.3 Алгоритм хеширования был другим. Для сохранённых таблиц, в которых использовалась эта функция хеширования, используйте Hashtbl.rebuild

Инструменты для кодеков UTF

type utf_decode 

Тип для результатов декодирования UTF. Значения этого типа представляют результат попытки декодирования в формате преобразования Unicode.

val utf_decode_is_valid : utf_decode -> bool

utf_decode_is_valid d равно true тогда и только тогда, когда d содержит корректно декодированные данные.

val utf_decode_uchar : utf_decode -> t

utf_decode_uchar d — это символ Unicode, декодированный из d, если utf_decode_is_valid d равно true, и Uchar.rep в противном случае.

val utf_decode_length : utf_decode -> int

utf_decode_length d — это количество элементов источника, обработанных при декодировании d. Это значение всегда строго положительно и меньше или равно 4. Тип элементов источника зависит от конкретного декодера; для декодеров стандартной библиотеки эта функция всегда возвращает длину в байтах.

val utf_decode : int -> t -> utf_decode

utf_decode n u — это корректный результат декодирования UTF для u, при котором из источника было обработано n элементов. Значение n должно быть положительным и меньше или равно 4 (модуль это не проверяет).

val utf_decode_invalid : int -> utf_decode

utf_decode_invalid n — это некорректный результат декодирования UTF, при котором до возникновения ошибки из источника было обработано n элементов. Значение n должно быть положительным и меньше или равно 4 (модуль это не проверяет). В результате декодирования в качестве символа Unicode получается Uchar.rep.

val utf_8_decode_length_of_byte : char -> int

utf_8_decode_length_of_byte byte — это количество байтов от 1 до Uchar.max_utf_8_decode_length, которое будет обработано при корректном декодировании UTF-8, начинающемся с байта byte, либо 0, если byte не может начинать корректное декодирование.

  • Начиная с версии 5.4
val max_utf_8_decode_length : int

max_utf_8_decode_length — это 4, максимальное количество байтов, которое может быть обработано при корректном или некорректном декодировании UTF-8.

  • Начиная с версии 5.4
val utf_8_byte_length : t -> int

utf_8_byte_length u — это количество байтов, необходимых для кодирования u в UTF-8.

val utf_16_byte_length : t -> int

utf_16_byte_length u — это количество байтов, необходимых для кодирования u в UTF-16.

© 1995-2026 INRIA.
https://ocaml.org/manual/5.5/api/Uchar.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API