1with Ada.Containers.Formal_Hashed_Sets; 2with Ada.Strings.Hash; 3 4-- with Dynamic_Strings; use Dynamic_Strings; 5-- with Bounded_Dynamic_Strings; 6 7with Equal8_Pkg; 8 9package Equal8 is 10 11 package Dynamic_Strings is 12 -- pragma SPARK_Mode (On); 13 14 package Bounded_Dynamic_Strings is new Equal8_Pkg 15 (Component => Character, 16 List_Index => Positive, 17 List => String, 18 Default_Value => ' '); 19 type Dynamic_String is new Bounded_Dynamic_Strings.Sequence; 20 21 end Dynamic_Strings; 22 use Dynamic_Strings; 23 24 subtype Subscription_Address is Dynamic_String (Capacity => 255); 25 26 function Hashed_Subscription_Address (Element : Subscription_Address) 27 return Ada.Containers.Hash_Type is 28 (Ada.Strings.Hash (Value (Element))); 29 30 package Subscription_Addresses is new Ada.Containers.Formal_Hashed_Sets 31 (Element_Type => Subscription_Address, 32 Hash => Hashed_Subscription_Address, 33 Equivalent_Elements => "="); 34 35 procedure Foo; 36end Equal8; 37