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


Спецификации задач и тела задач


Задачный модуль состоит из спецификации задачи и тела задачи.

Спецификация задачи,

которая начинается зарезервированными словами

task type,

описывает

задачный тип.

Значение объекта задачного типа указывает

задачу.

Если задача имеет входы, то они описываются в спецификации задачи; эти входы также называются входами объекта. Выполнение задачи определяется соответствующим телом задачи.

Спецификация задачи без зарезервированного слова

type

определяет

одну задачу.

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

описание-задачи ::== спецификация-задачи; спецификация - задачи :: = task [type] идентификатор [is

{описание - входа} {спецификатор - представления} end [простое-имя-задачи]] тело-задачи ::= task body простое-имя-задачи is

[раздел - описаний] begin

последовательность - операторов [exception

обработчик - исключения {обработчик-исключения}] end [простое-имя-задачи];

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

При предвыполнении спецификации задачи описания входов и спецификаторы представления (если они есть) предвыполняются в том порядке, в котором они даны. Спецификаторы представления применяются только к входам, описанным в спецификации задачи (см. 13.5).

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




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



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