pragma Ada_2012;
pragma Ada_2012;
with DDS_Support.Sequences_Generic;
with DDS.TypeSupport;
with DDS.MetpTypeSupport;
generic
type Data_Type is limited private;
type Data_Type_Access is access all Data_Type;
pragma No_Strict_Aliasing (Data_Type_Access);
type Index_Type is range <>;
First_Element : Index_Type;
type Data_Array is array (Index_Type range <>) of aliased Data_Type;
with procedure Initialize (Self : in out Data_Type) is <>;
with procedure Finalize (Self : in out Data_Type) is <>;
with procedure Copy (Dst : in out Data_Type; Src : in Data_Type) is <>;
with package Data_Sequences is new DDS_Support.Sequences_Generic
(Element => Data_Type,
Element_Access => Data_Type_Access,
Index_Type => Index_Type,
First_Element => First_Element,
Element_Array => Data_Array,
Initialize => Initialize,
Finalize => Finalize,
Copy => Copy);
with function Get_Type_Name return Standard.DDS.String with Warnings => Off;
type TypeSupport is new Standard.DDS.TypeSupport.Ref with private with Warnings => Off;
type MetpTypeSupport is new Standard.DDS.MetpTypeSupport.Ref with private with Warnings => Off;
package DDS.Treats_Generic is
end DDS.Treats_Generic;