|
|
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 Liens, seg_04901f, seg_0493e9
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
└─⟦5a81ac88f⟧ »Space Info Vol 1«
└─⟦this⟧
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
└─⟦cfc2e13cd⟧ »Space Info Vol 2«
└─⟦this⟧
with Lexical, Token_List, Erreur, Etat, Bounded_String;
with Set_Of_Links;
use Lexical, Token_List, Bounded_String;
package body Liens is
Lien_First : Token_List.Object := Make (Creer_Lien);
Lien_Follow : Token_List.Object := Make ((Creer_Lien, Introduction));
procedure Lien (Links : in out Set_Of_Links.Object) is
Nom1 : Bounded_String.Variable_String (32);
Nom2 : Bounded_String.Variable_String (32);
Etat_Lien : Lexical.Token;
begin
Bounded_String.Free (Nom1);
Bounded_String.Free (Nom2);
if Lexical.Get_Token = Creer_Lien then
Lexical.Next;
if Lexical.Get_Token = Parnto then
Lexical.Next;
if Lexical.Get_Token = Id then
Bounded_String.Copy (Nom1, Lexical.Get_Value);
Lexical.Next;
if Lexical.Get_Token = Virgul then
Lexical.Next;
if Lexical.Get_Token = Id then
Bounded_String.Copy (Nom2, Lexical.Get_Value);
Lexical.Next;
if Lexical.Get_Token = Virgul then
Lexical.Next;
Etat.Parse (Etat_Lien);
if Lexical.Get_Token = Parntf then
Lexical.Next;
if Set_Of_Links.Exist
(Image (Nom1),
Image (Nom2), Links) then
Erreur.Lien ("Dipplication de Lien !");
else
if Etat_Lien = Lie then
Set_Of_Links.Add_New
(Image (Nom1), Image (Nom2),
Set_Of_Links.Linked, Links);
else
Set_Of_Links.Add_New
(Image (Nom1), Image (Nom2),
Set_Of_Links.Unlinked, Links);
end if;
end if;
else
Erreur.Syntaxe ("Manque )", Lien_Follow);
end if;
else
Erreur.Syntaxe ("Manque ,", Lien_Follow);
end if;
else
Erreur.Syntaxe ("Mauvais id", Lien_Follow);
end if;
else
Erreur.Syntaxe ("Manque ,", Lien_Follow);
end if;
else
Erreur.Syntaxe ("Mauvais id", Lien_Follow);
end if;
else
Erreur.Syntaxe ("Manque (", Lien_Follow);
end if;
else
Erreur.Syntaxe ("Manque CREER_LIEN", Lien_Follow);
end if;
end Lien;
procedure Parse (Links : in out Set_Of_Links.Object) is
begin
while Is_In (Lexical.Get_Token, Lien_First) loop
Lien (Links);
end loop;
end Parse;
end Liens;
nblk1=6
nid=3
hdr6=a
[0x00] rec0=1e rec1=00 rec2=01 rec3=018
[0x01] rec0=00 rec1=00 rec2=04 rec3=004
[0x02] rec0=10 rec1=00 rec2=06 rec3=046
[0x03] rec0=14 rec1=00 rec2=02 rec3=00e
[0x04] rec0=15 rec1=00 rec2=05 rec3=001
[0x05] rec0=6f rec1=70 rec2=65 rec3=373
tail 0x2174d51d4865b3e0dca2a 0x42a00088462060003
Free Block Chain:
0x3: 0000 00 00 00 07 80 01 3b 01 00 00 00 65 20 28 22 4d ┆ ; e ("M┆