Declaración y definición de tipos record

Explicación

Los record son estructuras heterogéneas: agregados de elementos (campos) del mismo o distintos tipos que se pueden acceder individualmente mediante su nombre. Un record se define con la palabra record, seguida de la declaración de los campos del record y end record.

Sintaxis

record_full_type_declaration ::= 
     type defining_identifier [known_discriminant_part] is record_type_definition;
record_type_definition ::= record_modifiers record_definition

record_definition ::= 
    record
       component_list
    end record
  | null record

component_list ::= 
      component_item {component_item}
   | {component_item} variant_part
   |  null;

component_item ::= component_declaration | aspect_clause

component_declaration ::= 
   defining_identifier_list : component_definition [:= expression];

component_definition ::= 
   [aliased] subtype_indication
 | [aliased] access_definition
record_modifiers ::= [[abstract] tagged] [limited]

Ejemplo

type Complejo is
record
    Real, Imag: Float := 0.0;
end record;

type Record_Nulo is null record;

Véase