Тип модуля
module Type: sig .. end
Интроспекция типов.
- С версии 5.1
Свидетельство равенства типов
type (_, _) eq =
|
| Equal :
|
Назначение eq — представлять равенства типов, которые в противном случае могут быть неизвестны системе проверки типов (например, потому что они могут зависеть от динамических данных).
Значение типа (a, b) eq представляет факт равенства типов a и b.
Если имеется значение eq : (a, b) eq, доказывающее равенство типов a и b, его можно использовать для преобразования значения типа a в значение типа b посредством сопоставления с образцом для Equal:
let cast (type a) (type b) (Equal : (a, b) Type.eq) (a : a) : b = a
Во время выполнения эта функция просто возвращает свой второй аргумент без изменений.
Идентификаторы типов
module Id: sig .. end
Идентификаторы типов.
© 1995-2026 INRIA.
https://ocaml.org/manual/5.5/api/Type.html