|
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: 8192 (0x2000) Types: Ada Source Notes: 03_class, FILE, R1k_Segment, e3_tag, package body View, seg_0463b1
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000 └─⟦cfc2e13cd⟧ »Space Info Vol 2« └─⟦this⟧
with Text_Io, Complement_Array, Attribute, The_Hero, The_Place; package body View is procedure Create_Number (Item : out Object; A_Number : in Integer) is begin Item := (Kind => Number, Number_Value => A_Number); end Create_Number; procedure Create_Sentence (Item : out Object; A_Sentence : in Identifier.Object) is begin Item := (Kind => Sentence, Sentence_Value => A_Sentence); end Create_Sentence; procedure Create_Attribute (Item : out Object; An_Attribute : in Attribute.Object) is begin Item := (Kind => Single_Attribute, The_Attribute => An_Attribute); end Create_Attribute; procedure Create_Name (Item : out Object; A_Name : in Objet.Object) is begin Item := (Kind => Name, The_Name => A_Name); end Create_Name; procedure Create_Exit (Item : out Object; An_Exit : in Detail.Object) is begin Item := (Kind => Single_Exit, Direction => An_Exit); end Create_Exit; procedure Create_Exits (Item : out Object) is begin Item := (Kind => Exits); end Create_Exits; procedure Create_Contents (Item : out Object; Place : in Objet.Object) is begin Item := (Kind => Contents, The_Place => Place); end Create_Contents; procedure Display (Item : in Object) is A_Number : Natural := 0; begin case Item.Kind is when Number => Text_Io.Put (Integer'Image (Item.Number_Value)); when Sentence => Text_Io.Put (Identifier.Image (Item.Sentence_Value)); when Single_Attribute => Text_Io.Put (Attribute.Image (Item.The_Attribute)); when Name => Text_Io.Put (Objet.Image (Item.The_Name)); when Single_Exit => if Detail.Exist (Item.Direction) then Text_Io.Put (Complement_Array.Exit_Name (The_Place.Index, Detail.Index (Item.Direction))); end if; when Exits => Complement_Array.List_Exits_Init (The_Place.Index); while not Complement_Array.List_Exits_Done (The_Place.Index) loop Text_Io.Put (Complement_Array.List_Exits_Direction (The_Place.Index) & " "); Complement_Array.List_Exits_Next (The_Place.Index); end loop; Text_Io.New_Line; when Contents => Text_Io.Put ("Je vois"); Complement_Array.List_Complement_Init; while not Complement_Array.List_Complement_Done loop if Complement_Array.List_Complement_Place = Objet.Complement (Item.The_Place) and The_Hero.Image /= Complement_Array. List_Complement_Name then if A_Number > 0 then Text_Io.Put (", "); else Text_Io.Put (" "); end if; Text_Io.Put (Complement_Array.List_Complement_Name); A_Number := A_Number + 1; end if; Complement_Array.List_Complement_Next; end loop; if A_Number = 0 then Text_Io.Put (" rien de special !"); -- ou text_io.put ??? else Text_Io.Put ("."); end if; when Unknown => null; end case; end Display; procedure Show (Item : in Object) is begin Text_Io.Put ("View : Kind : " & View_Kind'Image (Item.Kind) & " Image : "); Display (Item); Text_Io.New_Line; end Show; end View;
nblk1=7 nid=7 hdr6=c [0x00] rec0=21 rec1=00 rec2=01 rec3=004 [0x01] rec0=1f rec1=00 rec2=05 rec3=062 [0x02] rec0=14 rec1=00 rec2=02 rec3=01e [0x03] rec0=01 rec1=00 rec2=03 rec3=06c [0x04] rec0=1b rec1=00 rec2=04 rec3=002 [0x05] rec0=05 rec1=00 rec2=06 rec3=001 [0x06] rec0=bc rec1=70 rec2=00 rec3=031 tail 0x21748c03486504abe632c 0x42a00088462060003 Free Block Chain: 0x7: 0000 00 00 00 58 80 1c 70 6c 65 6d 65 6e 74 20 28 49 ┆ X plement (I┆