Справочное руководство по языку Ада-83


Скалярные типы


Под скалярными типами подразумеваются перечислимые, целые и вещественные типы. Перечислимые и целые типы называются

дискретными

типами; каждое значение дискретного типа имеет номер позиции — целое значение. Целые и вещественные типы называются

числовыми

типами. Все скалярные типы упорядочены, т.е. для их значений предопределены все операции отношения.

ограничение-диапазона ::= range диапазон диапазон ::= атрибут-диапазона |простое-выражение .. простое-выражение

Диапазон определяет подмножество значений скалярного типа. Диапазон L. .R определяет значения от L до R включительно, если истинно отношение L < = R. Значения L и R называются соответственно

нижней границей

и

верхней границей

диапазона. Значение V удовлетворяет ограничению диапазона, если оно принадлежит диапазону; говорят, что значение V

принадлежит

диапазону, если одновременно истинны отношения L<=V и V<=R.

Пустой диапазон &#x2014;

это диапазон, для которого истинно отношение R < L; пустому диапазону не принадлежит никакое значение. Операции < = и < в вышеприведенных определениях являются предопределенными операциями над скалярными типами.

Если ограничение диапазона используется в указании подтипа либо непосредственно, либо как часть ограничения плавающего или фиксированного типа, тип простых выражений (а также границ атрибута диапазона) должен быть тем же, что и базовый тип в обозначении типа указания подтипа. Ограничение диапазона совместимо с подтипом, если каждая граница диапазона принадлежит подтипу или если ограничение диапазона определяет пустой диапазон; иначе ограничение диапазона не совместимо с подтипом.

Предвыполнение ограничения диапазона состоит из вычисления диапазона. Вычисление диапазона определяет его нижнюю и верхнюю границы. Если границы заданы простыми выражениями, вычисление диапазона вычисляет эти выражения в порядке, который не определен в языке.

Атрибуты

Для любого скалярного типа Т или для любого подтипа Т скалярного типа определены следующие атрибуты:




Начало  Назад  Вперед