Una declaración de tipo privado es una en la que, como descripción, se
utiliza la palabra private. La declaración proporciona una vista
restringida de un tipo que está definido en otro sitio.
En el ámbito de su declaración un tipo privado sólo admite asignación y
operadores relacionales de igualdad (a menos que además sea limitado).
Una declaración de tipo privado se puede hacer en la sección pública de la
especificación de un paquete; tal tipo debe redeclararse en la sección privada (private)
de dicha especificación, donde se definirán sus características "ocultas" que
sólo podrán usarse dentro del paquete.
También puede declararse privado un parámetro formal genérico en cuyo caso
dentro de la unidad genérica sólo se le podrán aplicar las operaciones antes
mencionadas, independientemente del tipo que actúe como parámetro real.
generic -- Tipos privados pasados como parámetros genéricos type Elemento_1 is private; type Elemento_2 is limited private; type Elemento_3 is tagged private; package Ejemplo is -- Declaración de un tipo privado ofertado por un paquete type Ofertado is private; ...