Я определил тип:Могу ли я смело полагаться на OCaml встроенный для того, чтобы перечислений
type day = Monday | Tuesday | Wednesday | Thursday
Я знаю, что заказы OCaml автоматически любого типа:
val (>=) : 'a -> 'a -> bool
Структурные функции упорядочивания. Эти функции совпадают с обычными порядками над целыми числами, символами, строками, байтовыми последовательностями и числами с плавающей запятой и расширяют их до полного упорядочения по всем типам.
Поэтому я могу попробовать следующее:
# Monday < Tuesday ;;
- : bool = true
Могу ли я обобщать моих экспериментов, что любой тип сумма заказа своих конструкторов в том порядке, в котором они были определены? Это где-то задокументировано? Будет ли это считаться плохой практикой, если я полагаюсь на это поведение в своем приложении?
Если вы хотите быть в безопасности, вы можете добавить в свой код вы можете добавить '' assert ((понедельник <вторник) && (вторник <среда) && (среда <четверг)); '' –