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

11.4 Обработка исключений

При возникновении исключения обычное выполнение программы прерывается, и управление передаётся соответствующему обработчику исключения, если таковой имеется. Обработать исключение означает отреагировать на исключительное событие. Распространить исключение означает повторно вызвать его в другом контексте; то есть, не отреагировать на исключительное событие в текущем контексте.

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

В рамках заданного задания, если выполнение конструкции a, согласно этому документу, включает (частично) выполнение конструкции b, то во время выполнения b, выполнение a считается динамически охватывающим выполнение b. Наиболее глубоко динамически охватывающее выполнение данного выполнения — это динамически охватывающее выполнение, которое началось последним.
Когда исключение возникает в результате выполнения данной конструкции, дальнейшее выполнение этой конструкции прерывается; то есть, любые части выполнения, которые ещё не произошли, не выполняются. Сначала выполнение конструкции завершается, а затем она покидается, как описано в 7.6.1. Затем:
  • Если конструкция представляет собой тело_задачи, исключение не распространяется дальше;
  • Если конструкция — это последовательность_операторов обрабатываемой_последовательности_операторов, у которой имеется обработчик с выбором, охватывающим исключение, исключение обрабатывается этим обработчиком;
  • В противном случае, исключение распространяется на наиболее глубоко динамически охватывающее выполнение, что означает, что исключение повторно возникает в этом контексте.
Когда исключение обрабатывается заданным обработчиком, если есть указание_параметра_выбора, оно сначала обрабатывается, что создаёт параметр выбора и инициализирует его исключением. Затем выполняется последовательность_операторов обработчика; это выполнение заменяет прерванную часть выполнения последовательности_операторов.
ПРИМЕЧАНИЕ. Исключения, возникающие в части_объявления тела, не обрабатываются обработчиками обрабатываемой_последовательности_операторов этого тела.


Spec-Zone.ru

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