Spec-Zone.ru › Ada 2022
Руководство по Ada (Ada 2022)

6.7 Процедуры без тела

Оператор null_procedure_declaration предоставляет сокращенный способ объявления процедуры с пустым телом.

Синтаксис

null_procedure_declaration ::=
[overriding_indicator]
procedure_specification is null
[aspect_specification];

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

Если оператор null_procedure_declaration является завершением, он должен быть завершением объявления subprogram_declaration или generic_subprogram_declaration. Профиль оператора null_procedure_declaration, который завершает объявление, должен полностью соответствовать этому объявлению.

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

Оператор null_procedure_declaration, который не является завершением, объявляет процедуру без тела. Завершение не разрешено для null_procedure_declaration; однако, null_procedure_declaration может завершать предыдущее объявление.

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

Вызов процедуры без тела вызывается с помощью вызова подпрограммы. При вызове подпрограммы для процедуры без тела или процедуры, завершенной с помощью null_procedure_declaration, выполнение subprogram_body не оказывает никакого эффекта.
Выполнение оператора null_procedure_declaration не имеет других последствий, кроме как обеспечить возможность вызова процедуры без тела без сбой проверки Elaboration_Check.

Примеры

Пример объявления процедуры без тела:
procedure Simplify(Expr : in out Expression) is null; -- см. 3.9
-- По умолчанию Simplify ничего не делает, но может быть переопределена в расширениях Expression


Spec-Zone.ru

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