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


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


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

Спецификация дискриминанта с несколькими идентификаторами эквивалентна последовательности единичных спецификаций дискриминантов, как пояснено в разд. 3.2. Каждая единичная спецификация дискриминанта описывает дискриминант. Если спецификация дискриминанта включает составной ограничитель присваивания, за которым следует выражение, то это — выражение по умолчанию для дискриминанта; выражения по умолчанию должны быть заданы либо для всех, либо не заданы ни для одного из дискриминантов раздела дискриминантов.

Использование имени дискриминанта недопустимо в выражениях по умолчанию раздела дискриминантов, если спецификация дискриминанта сама дана в этом разделе дискриминантов.

В определении именуемого типа допустимы только следующие случаи использования имени дискриминанта: в выражениях по умолчанию для компонент записи, в разделе вариантов в качестве имени дискриминанта, а также в определении подтипа компоненты — либо как границы в ограничении индекса, либо для задания значения дискриминанта в ограничении дискриминанта. Использованное в этих определениях подтипа компоненты имя дискриминанта должно встречаться само по себе, а не как часть выражения. Такие определения подтипа компонент и такие ограничения называются

зависимыми от дискриминанта.

Компонента называется зависимой от дискриминанта, если она — либо компонента записи, описанная в разделе вариантов, либо компонента записи, чье определение подтипа компоненты зависит от дискриминанта, либо, наконец, одна из подкомпонент, зависящих от дискриминанта.

Каждое значение записи включает значение каждого дискриминанта, заданного для именуемого типа; оно также включает значение для каждой компоненты записи, которая не зависит от дискриминанта.




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



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