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


Именуемые типы - часть 9


Примеры подтипов записей:

subtype DRUMUNIT is PERIPHERAL(DRUM); subtype DISKUNIT is PERIPHERAL(DISK);

Примеры ограниченных переменных именуемого типа:

WRITER : PERIPHERAL(UNIT => PRINTER); ARCHIVE : DISK_UNIT;

Примечание.

Выборы с дискретными значениями используются также в операторах выбора и в агрегатах массива. Выборы с простыми именами компонент используются в агрегатах

записей.

Ссылки:

агрегат записи 4.3.1, агрегат массива 4.3.2, базовый тип 3.3, выражение 4.4, дискретный диапазон 3.6, диапазон 3.5, дискриминант 3.3, именуемый тип 3.7, компонента 3.3, настраиваемый формальный тип 12.1.2, подтип 3.3, простое выражение 4.4, простое имя 4.1, пустой диапазон 3.5, список компонент 3.7, статическое выражение 4.9, статический дискретный диапазон 4.9, статический подтип 4.9.

3.7.4. ОПЕРАЦИИ НАД ИМЕНУЕМЫМИ ТИПАМИ

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

Для любого объекта А типа с дискриминантами базовые операции включают также следующий атрибут:

A'CONSTRAINED

Вырабатывает значение TRUE, если ограничение дискриминанта наложено на объект А или если объект — константа (включая формальный параметр или формальный параметр настройки вида in); вырабатывает значение FALSE в противном случае. Если А — формальный параметр настройки вида in oirt или если А — формальный параметр вида in out или out и данное в соответствующей спецификации параметра обозначение типа обозначает неограниченный тип с дискриминантами, то значение этого атрибута получается из значения атрибута соответствующего фактического параметра. Значение этого атрибута имеет предопределенный тип BOOLEAN.

Кроме того, атрибуты T'BASE и T'SIZE опеределены для именуемого типа или подтипа Т (см. 3.3.3); атрибуты A'SIZE и A'ADDRESS определены для записи А (см. 13.7.2).




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



Книжный магазин