Next: , Previous: 12.5.2, Up: 12.5


12.5.3 Formal Array Types

1/2
The category determined for a formal array type is the category of all array types.

Syntax

2

formal_array_type_definition::= array_type_definition
Legality Rules

3
The only form of discrete_subtype_definition that is allowed within the declaration of a generic formal (constrained) array subtype is a subtype_mark.

4
For a formal array subtype, the actual subtype shall satisfy the following conditions:

5

6

7

8

Examples

9
Example of formal array types:

10

     −−  given the generic package 

11

     generic
        type Item   is private;
        type Index  is (<>);
        type Vector is array (Index range <>) of Item;
        type Table  is array (Index) of Item;
     package is
        ...
     end P;

12

     −−  and the types 

13

     type Mix    is array (Color range <>) of Boolean;
     type Option is array (Color) of Boolean;

14

     −−  then Mix can match Vector and Option can match Table 

15

     package is new P(Item   => Boolean, Index => Color,
                        Vector => Mix,     Table => Option);

16

     −−  Note that Mix cannot match Table and Option cannot match Vector