| with Discr59_Pkg2; |
| |
| package Discr59_Pkg1 is |
| |
| subtype Index_Type is Natural range 1 .. 300; |
| |
| type Code_Type is (Global_Query, Status_Query, Alert); |
| |
| type Id_Type is (None, At_Command, At_Response); |
| |
| package My_G is new Discr59_Pkg2 (21); |
| |
| type Arr is array (Index_Type range <>) of My_G.Token_Type; |
| |
| type Unit_List_Type (Last : Natural) is record |
| A : Arr (1 .. Last); |
| end record; |
| |
| type At_Response_Type (Kind : Code_Type; Units : Natural) is record |
| case Kind is |
| when Global_Query => Global_Query : Unit_List_Type (Units); |
| when Status_Query => null; |
| when Alert => Alert : Unit_List_Type (Units); |
| end case; |
| end record; |
| |
| type Rec (Kind : Id_Type; Code : Code_Type; Units : Natural) is record |
| case Kind is |
| when None => null; |
| when At_Command => null; |
| when At_Response => At_Response : At_Response_Type (Code, Units); |
| end case; |
| end record; |
| |
| end Discr59_Pkg1; |