Справочник по Ada 2005
8.5 Переименование деклараций
Декларация переименования объявляет другое имя для сущности, такой как объект, исключение, пакет, подпрограмма, вход или обобщённый блок. В качестве альтернативы, декларация_переименования_подпрограммы может быть завершением предыдущей декларации_подпрограммы.
Синтаксис
декларация_переименования ::=
объявление_переименования_объекта
| объявление_переименования_исключения
| объявление_переименования_пакета
| объявление_переименования_подпрограммы
| объявление_переименования_обобщённого_блока
объявление_переименования_объекта
| объявление_переименования_исключения
| объявление_переименования_пакета
| объявление_переименования_подпрограммы
| объявление_переименования_обобщённого_блока
Динамическая семантика
Выполнение декларации_переименования вычисляет имя, которое следует за служебным словом renames, и тем самым определяет представление и сущность, обозначаемые этим именем (переименованное представление и переименованная сущность). Имя, которое обозначает декларацию_переименования, обозначает (новое представление) переименованной сущности.
ПРИМЕЧАНИЯ
9 Переименование может быть использовано для разрешения конфликтов имён и как сокращение. Переименование с другим идентификатором или символом_оператора не скрывает старое имя; новое имя и старое имя необязательно должны быть видимыми в одних и тех же местах.
10 Задача или защищённый объект, объявленный явным объявлением_объекта, могут быть переименованы как объект. Однако, отдельную задачу или защищённый объект нельзя переименовать, так как соответствующий тип является анонимным (что означает, что у него нет именованных подтипов). По схожим причинам, объект анонимного массива или типа доступа не может быть переименован.
11 Подтип, определённый без дополнительных ограничений, может быть использован для достижения эффекта переименования другого подтипа (включая задачу или защищённый подтип), как в
подтип Режим есть Ada.Text_IO.Режим_файла;