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

J.15.11 Директивы Priority и Interrupt_Priority

Синтаксис

Форма директивы pragma Priority имеет следующий вид:
pragma Priority (выражение);
Форма директивы pragma Interrupt_Priority имеет следующий вид:
pragma Interrupt_Priority [(выражение);]

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

Ожидаемый тип выражения в директивах Priority или Interrupt_Priority — Integer.

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

Директива Priority разрешена только непосредственно внутри определения_задачи, определения_защищенного_объекта или части_объявления тела_подпрограммы. Директива Interrupt_Priority разрешена только непосредственно внутри определения_задачи или определения_защищенного_объекта.
Для директивы Priority, которая появляется в части_объявления тела_подпрограммы, выражение должно быть статическим, и его значение должно быть в диапазоне System.Priority.

Статическая семантика

Для реализации, поддерживающей Приложение D, директива pragma Priority задаёт значение атрибута Priority (см. D.1), а директива pragma Interrupt_Priority задаёт значение атрибута Interrupt_Priority следующим образом:
  • Если директива встречается в определении_задачи, то выражение ассоциируется с атрибутом для типа задачи или объявления_одиночной_задачи, содержащим pragma;
  • Если директива встречается в определении_защищенного_объекта, то выражение ассоциируется с атрибутом для типа защищенного объекта или объявления_одиночного_защищенного_объекта, содержащим pragma;
  • Если директива встречается в части_объявления тела_подпрограммы, то выражение ассоциируется с атрибутом для подпрограммы, содержащей pragma.
Если в директиве Interrupt_Priority нет выражения, атрибут Interrupt_Priority имеет значение Interrupt_Priority'Last.


Spec-Zone.ru

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