with Ada.Strings.Unbounded; with Ada.Strings.Fixed; with Ada.Containers.Hashed_Maps; with Ada.Strings.Unbounded.Hash; with Ada.Strings.Fixed.Hash; package Config is package String_U renames Ada.Strings.Unbounded; package String_F renames Ada.Strings.Fixed; use type String_U.Unbounded_String; function Hashed (X : String_U.Unbounded_String) return Ada.Containers.Hash_Type renames Ada.Strings.Unbounded.Hash; package Config_Maps is new Ada.Containers.Hashed_Maps ( Key_Type => String_U.Unbounded_String, Element_Type => String_U.Unbounded_String, Hash => Hashed, Equivalent_Keys => "="); procedure Add_Param (Cfg : in out Config.Config_Maps.Map; Arg : String); end Config;