Перечислимые (enumerated)
Перечислимые типы определяют упорядоченные наборы значений, перечисляя идентификаторы, которые обозначают эти значения. Их порядок следует из последовательности, в которой они были перечислены.
Объявление
Type имя = (идентификатор, идентификатор,..., идентификатор);
Идентификаторы в определении типа становятся константами перечислимого типа. Первая константа имеет порядковый номер 0, вторая - 1, и так далее. Перечислимые типы являются подклассом порядковых типов.
Пример
Type Suit = (Club, Diamond, Heart, Spade);
При таком объявлении, Heart является констанотой типа Suit.
Стандартная функция Ord возвращает порядковый номер перечислимой константы.
В этом примере,
Ord(Club) = 0
Ord(Diamond) = 1
Ord(Heart) = 2
И так далее.