|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 7168 (0x1c00)
Types: Ada Source
Notes: 03_class, FILE, R1k_Segment, e3_tag, package body My_Set_Of_Adress, seg_055a64, seg_055a6b
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
└─⟦cfc2e13cd⟧ »Space Info Vol 2«
└─⟦this⟧
with String_Utilities, Bounded_String, Text_Manager;
package body My_Set_Of_Adress is
procedure Initialize (The_Set : in out Set_Of_Adress.Set) is
begin
Set_Of_Adress.Initialize (S => The_Set);
end Initialize;
function Contains_This_Adress
(The_Set : in Set_Of_Adress.Set;
This_Adress : in All_String.Adress_String_And_Apply_Number)
return Boolean is
I : Set_Of_Adress.Iterator;
Temp : Element;
begin
Set_Of_Adress.Init (Iter => I, S => The_Set);
while (not Set_Of_Adress.Done (Iter => I)) loop
Temp := Set_Of_Adress.Value (I);
if (This_Adress = Temp.Adress) then
return True;
end if;
Set_Of_Adress.Next (I);
end loop;
return False;
end Contains_This_Adress;
procedure Add_To (This_Set : in out Set_Of_Adress.Set;
This_Adress : in All_String.
Adress_String_And_Apply_Number;
This_Machine : Com_Defs.V_String;
This_Appli_Number : Com_Defs.V_String) is
Temp : Element;
begin
Temp.Adress := This_Adress;
Temp.Machine := This_Machine;
Temp.Appli_Number := This_Appli_Number;
Set_Of_Adress.Add (S => This_Set, X => Temp);
end Add_To;
procedure Delete_To (This_Set : in out Set_Of_Adress.Set;
This_Adress : in All_String.
Adress_String_And_Apply_Number) is
I : Set_Of_Adress.Iterator;
Temp : Element;
Oust : Boolean := False;
begin
Set_Of_Adress.Init (Iter => I, S => This_Set);
while (not Oust and not Set_Of_Adress.Done (Iter => I)) loop
Temp := Set_Of_Adress.Value (I);
if (This_Adress = Temp.Adress) then
Set_Of_Adress.Delete (S => This_Set, X => Temp);
Oust := True;
end if;
Set_Of_Adress.Next (I);
end loop;
end Delete_To;
procedure Extract_The_Machine
(This_Set : in Set_Of_Adress.Set;
This_Adress : in All_String.Adress_String_And_Apply_Number;
Answer_In : out Com_Defs.V_String) is
I : Set_Of_Adress.Iterator;
Temp : Element;
Oust : Boolean := False;
begin
Set_Of_Adress.Init (Iter => I, S => This_Set);
while (not Oust and not Set_Of_Adress.Done (Iter => I)) loop
Temp := Set_Of_Adress.Value (I);
if (This_Adress = Temp.Adress) then
Answer_In := Temp.Machine;
Oust := True;
end if;
Set_Of_Adress.Next (I);
end loop;
end Extract_The_Machine;
procedure Extract_The_Appli_Number
(This_Set : in Set_Of_Adress.Set;
This_Adress : in All_String.Adress_String_And_Apply_Number;
Answer_In : out Com_Defs.V_String) is
I : Set_Of_Adress.Iterator;
Temp : Element;
Oust : Boolean := False;
begin
Set_Of_Adress.Init (Iter => I, S => This_Set);
while (not Oust and not Set_Of_Adress.Done (Iter => I)) loop
Temp := Set_Of_Adress.Value (I);
if (This_Adress = Temp.Adress) then
Answer_In := Temp.Appli_Number;
Oust := True;
end if;
Set_Of_Adress.Next (I);
end loop;
end Extract_The_Appli_Number;
function Is_Empty (The_Set : in Set_Of_Adress.Set) return Boolean is
begin
return Set_Of_Adress.Is_Empty (S => The_Set);
end Is_Empty;
procedure Print (The_Set : in Set_Of_Adress.Set) is
I : Set_Of_Adress.Iterator;
Temp : Element;
begin
Set_Of_Adress.Init (Iter => I, S => The_Set);
while (not Set_Of_Adress.Done (Iter => I)) loop
Temp := Set_Of_Adress.Value (I);
Text_Manager.Text.Put_Line (" adress : " & Temp.Adress);
Text_Manager.Text.Put_Line
(" machine : " &
Bounded_String.Image
(Bounded_String.Variable_String (Temp.Machine)));
Text_Manager.Text.Put_Line
(" appli_number : " &
Bounded_String.Image (Bounded_String.Variable_String
(Temp.Appli_Number)));
Set_Of_Adress.Next (I);
end loop;
end Print;
end My_Set_Of_Adress;
nblk1=6
nid=0
hdr6=c
[0x00] rec0=1e rec1=00 rec2=01 rec3=056
[0x01] rec0=01 rec1=00 rec2=04 rec3=008
[0x02] rec0=17 rec1=00 rec2=05 rec3=04a
[0x03] rec0=1c rec1=00 rec2=02 rec3=006
[0x04] rec0=1b rec1=00 rec2=03 rec3=050
[0x05] rec0=14 rec1=00 rec2=06 rec3=000
tail 0x217608fbc87bf59d5f930 0x42a00088462060003