|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: B T
Length: 2758 (0xac6)
Types: TextFile
Names: »B«
└─⟦180fe333a⟧ Bits:30000405 8mm tape, Rational 1000, SW CATALOG, 10_20_0
└─⟦180fe333a⟧ Bits:30000537 8mm tape, Rational 1000, SW Catalog 10_20_0
└─⟦5cb1d1d7f⟧ »DATA«
└─⟦3b1ee7bd8⟧
└─⟦this⟧
--=====================================================================
pragma Page;
package body Set_Package is
function "*" (Set_1 : Set; Set_2 : Set) return Set is
-- intersection
begin
return (Set_1 and Set_2);
end "*";
-------------------------------------------------------------------------
function "+" (Element : Universe; Set_1 : Set) return Set is
Value_Set : Set := Set_1;
begin
Value_Set (Element) := True;
return Value_Set;
end "+";
-------------------------------------------------------------------------
function "+" (Set_1 : Set; Set_2 : Set) return Set is
begin
return (Set_1 or Set_2);
end "+";
-------------------------------------------------------------------------
function "+" (Set_1 : Set; Element : Universe) return Set is
Value_Set : Set := Set_1;
begin
Value_Set (Element) := True;
return Value_Set;
end "+";
-------------------------------------------------------------------------
function "-" (Set_1 : Set; Set_2 : Set) return Set is
begin
return (Set_1 and (not Set_2));
end "-";
-------------------------------------------------------------------------
function "-" (Set_1 : Set; Element : Universe) return Set is
Value_Set : Set := Set_1;
begin
Value_Set (Element) := False;
return Value_Set;
end "-";
-------------------------------------------------------------------------
function "<=" (Set_1 : Set; Set_2 : Set) return Boolean is
Value_Set : Set := (Set_1 and Set_2);
begin
return (Value_Set = Set_1);
end "<=";
-------------------------------------------------------------------------
function "<" (Set_1 : Set; Set_2 : Set) return Boolean is
Value_Set : Set := (Set_1 and Set_2);
begin
return ((Value_Set = Set_1) and (Value_Set /= Set_2));
end "<";
-------------------------------------------------------------------------
function Is_A_Member (Element : Universe; Of_Set : Set) return Boolean is
begin
return Of_Set (Element);
end Is_A_Member;
-------------------------------------------------------------------------
function Is_Empty (Set_1 : Set) return Boolean is
begin
return (Set_1 = Null_Set);
end Is_Empty;
-------------------------------------------------------------------------
function Number_In (Set_1 : Set) return Number is
Count : Integer := 0;
begin
for Index in Universe loop
if Set_1 (Index) then
Count := Count + 1;
end if;
end loop;
return Count;
end Number_In;
end Set_Package;