agpl_1.0.0_b5da3320/src/agpl-containers-ordered_multidimensional_maps.ads

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
with Ada.Containers.Ordered_Maps;

generic
   type Dimensions is (<>);
   type Key_Type is private;
   type Element_Type is private;

   with function "<" (Left, Right : Key_Type) return Boolean is <>;
   with function "=" (Left, Right : Element_Type) return Boolean is <>;
package Agpl.Containers.Ordered_Multidimensional_Maps is

   type Key_Array is array (Dimensions) of Key_Type;

   function "<" (L, R : Key_Array) return Boolean;

   package Base_Maps is new Ada.Containers.Ordered_Maps
     (Key_Array, Element_Type, "<", "=");

   subtype Map is Base_Maps.Map;

end Agpl.Containers.Ordered_Multidimensional_Maps;