File : generic_list_ops.ads


generic

   type Element is private;

package Generic_List_Ops is

   type List_Of_Elements is array (Integer range <>) of Element;

   generic
      with function "*" (Left, Right : Element) return Element is <>;
   function Product (List : List_Of_Elements) return Element;

   generic
      with function "+" (Left, Right : Element) return Element is <>;
   function Sum (List : List_Of_Elements) return Element;

   Empty_List : exception;

end Generic_List_Ops;