1generic 2 type Table_Component_Type is private; 3 type Table_Index_Type is range <>; 4 5 Table_Low_Bound : Table_Index_Type; 6 7package Opt46_Pkg is 8 9 type Table_Type is 10 array (Table_Index_Type range <>) of Table_Component_Type; 11 subtype Big_Table_Type is 12 Table_Type (Table_Low_Bound .. Table_Index_Type'Last); 13 14 type Table_Ptr is access all Big_Table_Type; 15 16 type Table_Private is private; 17 18 type Instance is record 19 Table : aliased Table_Ptr := null; 20 P : Table_Private; 21 end record; 22 23 function Last (T : Instance) return Table_Index_Type; 24 25private 26 27 type Table_Private is record 28 Last_Val : Integer; 29 end record; 30 31end Opt46_Pkg; 32