raise

Explicación

Palabra reservada que se utiliza para lanzar la excepción cuyo nombre se especifica y que puede ir acompañada de un mensaje opcional. En un manejador de excepciones se puede usar sola para relanzar la excepción recibida por el manejador.

Sintaxis

raise_statement ::=
    raise;
  | raise exception_name [with string_expression];

Ejemplo

La excepción División_Por_Cero es la declarada aquí.

function División (A, B: Integer) return Integer is
begin
   if B /= 0 then
      return A / B;
   else
      raise División_Por_Cero with "El divisor no puede ser cero";
   end if;
end División;
function División (A, B: Integer) return Integer is
begin
   return A / B;                 --  Constraint_Error se lanza
                                 --  automáticamente si B es cero.
exception
   when Constraint_Error raise;  --  Se relanza Constraint_Error
end División;

Véase