32 lines
711 B
Ada
32 lines
711 B
Ada
package Prot6 is
|
|
|
|
generic
|
|
type TD is private;
|
|
type TI is synchronized interface;
|
|
package Set_Get is
|
|
type T is synchronized interface and TI;
|
|
|
|
procedure Set (E : in out T; D : TD) is abstract;
|
|
function Get (E : T) return TD is abstract;
|
|
end Set_Get;
|
|
|
|
type My_Type_Interface is synchronized interface;
|
|
|
|
package Set_Get_Integer is
|
|
new Set_Get (TD => Integer,
|
|
TI => My_Type_Interface);
|
|
use Set_Get_Integer;
|
|
|
|
protected type My_Type is
|
|
new Set_Get_Integer.T with
|
|
|
|
overriding procedure Set (D : Integer);
|
|
overriding function Get return Integer;
|
|
private
|
|
I : Integer;
|
|
end My_Type;
|
|
|
|
procedure Dummy;
|
|
|
|
end Prot6;
|