Declaración de subprograma

Explicación

Declara un procedimiento o función cuyo cuerpo tendrá que ser definido más adelante. La declaración de un subprograma consta de una especificación formada por un identificador (defining_designator) y una lista de parámetros opcional (formal_part). En el caso de las funciones deberá, además, especificarse el tipo de resultado que devuelve (result_profile). La declaración puede ir precedida de un indicador de overriding, si sustituye a una operación primitiva de algún tipo.

El modificador opcional null_exclusion se puede utilizar en las funciones cuando el tipo del resultado es un access (puntero) a un objeto para indicar que nunca se devuelve el valor null.

La ristra de caracteres que forma un operator_symbol debe corresponderse con un operador válido.

Sintaxis

[overriding_indicator] procedure defining_program_unit_name [formal_part];
[overriding_indicator]
function defining_designator [formal_part] result_profile;
defining_designator ::= defining_program_unit_name | defining_operator_symbol

defining_program_unit_name ::= [parent_unit_name . ]defining_identifier
defining_operator_symbol ::= string_literal

result_profile ::=
    return [null_exclusion] subtype_mark;
  | return access_definition

Ejemplo

procedure Intercambiar (A, B : in out Integer);
procedure Mezclar (L1, L2 : in Lista; L3 : out Lista);
function Combinatorio (M, N : Natural) return natural;

Véase