|
|
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: 6144 (0x1800)
Types: Ada Source
Notes: 03_class, FILE, R1k_Segment, e3_tag, procedure Test_Identifier_List, seg_045fd2
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
└─⟦cfc2e13cd⟧ »Space Info Vol 2«
└─⟦this⟧
with Text_Io, Identifier, Exclusive_Generic_List;
use Text_Io;
procedure Test_Identifier_List is
package Identifier_List is new Exclusive_Generic_List
(Element => Identifier.Object,
Null_Element => Identifier.Null_Object,
Show_Element => Identifier.Show,
Get_Key => Identifier.Image);
List, List2 : Identifier_List.Object;
Iterator : Identifier_List.Iterator;
An_Identifier : Identifier.Object;
Ok : Boolean;
begin
Identifier_List.Show (List);
Identifier.Put (Item => An_Identifier, Value => "aller");
Identifier_List.Put (List, An_Identifier, Ok);
if Ok then
Put_Line ("L'element n'etait pas encore insere !");
else
Put_Line ("L'element etait deja insere !");
end if;
Identifier.Put (Item => An_Identifier, Value => "marcher");
Identifier_List.Put (List, An_Identifier, Ok);
if Ok then
Put_Line ("L'element n'etait pas encore insere !");
else
Put_Line ("L'element etait deja insere !");
end if;
Identifier.Put (Item => An_Identifier, Value => "courir");
Identifier_List.Put (List, An_Identifier, Ok);
if Ok then
Put_Line ("L'element n'etait pas encore insere !");
else
Put_Line ("L'element etait deja insere !");
end if;
Identifier_List.Put (List, An_Identifier, Ok); -- courir est reinsere
if Ok then
Put_Line ("L'element n'etait pas encore insere !");
else
Put_Line ("L'element etait deja insere !");
end if;
Identifier_List.Init (Iterator, List);
while not Identifier_List.Done (Iterator) loop
An_Identifier := Identifier_List.Value (Iterator);
Put_Line (Identifier.Image (Item => An_Identifier));
Identifier_List.Next (Iterator);
end loop;
Identifier_List.Show (List);
Put_Line ("longueur list 2 : " & Natural'Image
(Identifier_List.Length (List2)));
Put_Line ("list 2 vide : " & Boolean'Image
(Identifier_List.Is_Empty (List2)));
Identifier_List.Copy (List, List2);
Put_Line ("longueur list 2 : " & Natural'Image
(Identifier_List.Length (List2)));
Put_Line ("list 2 vide : " & Boolean'Image
(Identifier_List.Is_Empty (List2)));
Identifier.Put (Item => An_Identifier, Value => "sauter");
Identifier_List.Put (List2, An_Identifier, Ok);
Put_Line ("list 2");
Identifier_List.Show (List2);
Put_Line ("list");
Identifier_List.Show (List);
Identifier.Show (An_Identifier);
Identifier_List.Get (List2, An_Identifier, "marcher", Ok);
if Ok then
Put_Line ("element trouve");
else
Put_Line ("element non trouve");
end if;
Identifier.Show (An_Identifier);
Identifier_List.Free (List2);
Identifier_List.Show (List2);
Put_Line ("list 2 vide : " & Boolean'Image
(Identifier_List.Is_Empty (List2)));
Identifier_List.Show (List);
Identifier.Put (Item => An_Identifier, Value => "courir");
Identifier_List.Put (List, An_Identifier);
Identifier.Put (Item => An_Identifier, Value => "marcher");
Identifier_List.Put (List, An_Identifier);
Identifier.Put (Item => An_Identifier, Value => "ramer");
Identifier_List.Put (List, An_Identifier);
Identifier_List.Show (List);
Identifier_List.Free (List);
Identifier_List.Show (List);
end Test_Identifier_List;
nblk1=5
nid=2
hdr6=8
[0x00] rec0=1d rec1=00 rec2=01 rec3=00e
[0x01] rec0=1d rec1=00 rec2=05 rec3=012
[0x02] rec0=1a rec1=00 rec2=03 rec3=016
[0x03] rec0=18 rec1=00 rec2=04 rec3=000
[0x04] rec0=02 rec1=00 rec2=03 rec3=000
tail 0x21748305a864d5f01d5a8 0x42a00088462060003
Free Block Chain:
0x2: 0000 00 00 00 16 80 10 49 64 65 6e 74 69 66 69 65 72 ┆ Identifier┆