-- This package, if made directly visible via a "use" clause, allows
-- the operations in "Object_Sets" to be used in infix expressions
-- without renaming.
--
with Object_Sets;
package Object_Sets_Renames is

    subtype Element is Object_Sets.Element;

    subtype Set is Object_Sets.Set;

    function "+" (This_Set : in Set; That_Set : in Set) return Set
        renames Object_Sets.Union;

    function "*" (This_Set : in Set; That_Set : in Set) return Set
        renames Object_Sets.Intersection;

    function "xor" (This_Set : in Set; That_Set : in Set) return Set
        renames Object_Sets.Exclusive_Or;

    function "-" (This_Set : in Set; Except_For : in Set) return Set
        renames Object_Sets.Subtraction;

    function ">=" (This_Set : in Set; Contains : in Set) return Boolean
        renames Object_Sets.Subset;

    function ">" (This_Set : in Set; Contains : in Set) return Boolean
        renames Object_Sets.Proper_Subset;

end Object_Sets_Renames;