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


Описания переименования


Описание переименования задает другое имя для понятия.

описание-переименования ::= идентификатор : обозначение-типа renames имя-объекта; | идентификатор : exception renames имя-исключения;

| package идентификатор renames имя-пакета; | спецификация-подпрограммы renames имя-подпрограммы-или-входа;

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

renames,

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

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

Существуют следующие ограничения, связанные с переименованием подкомпоненты переменной, которая зависит от дискриминантов. Переименование недопустимо, если подтип переменной, как это определено в соответствующем описании объекта, описании компоненты или указании подтипа компоненты, является неограниченным типом или если переменная — это формальный объект настройки (вида

in out).

Также если переменная — формальный параметр, то переименование недопустимо, если заданное в спецификации параметра обозначение типа обозначает неограниченный тип, чьи дискриминанты имеют выражения по умолчанию.

Вторая форма описания переименования используется для переименования исключений;




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