Spec-Zone.ru › Ada 2012
Справочник Ada 2012

4.3 Агрегаты

Агрегат комбинирует значения компонентов в составное значение типа массива, типа записи или расширения записи.

Синтаксис

aggregate ::= record_aggregate | extension_aggregate | array_aggregate

Правила разрешения имен

Ожидаемый тип для агрегата должен быть типом массива, типом записи или расширением записи.

Правила допустимости

Агрегат не должен быть типа класса.

Динамические семантика

Для вычисления агрегата создается анонимный объект, и значения для компонентов или предковой части извлекаются (как описано в последующем подпункте для каждого типа агрегата) и присваиваются соответствующим компонентам или предковой части анонимного объекта. Извлечение значений и присваивание происходят в произвольном порядке. Значение агрегата — это значение этого объекта.
Если агрегат имеет помеченный тип, выполняется проверка, принадлежит ли его значение первому подтипу типа. Если эта проверка не пройдена, генерируется исключение Constraint_Error.


Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API