|
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 - download
Length: 8192 (0x2000) Types: Ada Source Notes: 03_class, FILE, R1k_Segment, e3_tag, package body Order_List, seg_0484db, seg_0487fe, seg_048810
└─⟦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 Text_Io, Exclusive_Generic_List, Group_Identifier_Array; package body Order_List is package O_List is new Exclusive_Generic_List (Element => Order.Object, Null_Element => Order.Null_Object, Show_Element => Order.Show, Get_Key => Order.Image); The_List : O_List.Object := O_List.Null_Object; The_Iterator : O_List.Iterator; procedure Put (An_Order : in Order.Object; Ok : out Boolean) is begin O_List.Put (The_List, An_Order, Ok); end Put; function Contains_Complement (Complement : in String) return Boolean is Found : Boolean; An_Iterator : O_List.Iterator; begin O_List.Init (An_Iterator, The_List); if not O_List.Done (An_Iterator) then Found := True; while not O_List.Done (An_Iterator) loop Found := Found and Order.Contains_Complement (O_List.Value (An_Iterator), Complement); O_List.Next (An_Iterator); end loop; else Found := False; end if; return Found; end Contains_Complement; procedure Make_Redirection (Group : in String; Position : in Positive; Ok : in out Boolean) is Temporary_List : O_List.Object; An_Order : Order.Object; An_Iterator : O_List.Iterator; begin if Contains_Complement (Group) then O_List.Init (An_Iterator, The_List); while not O_List.Done (An_Iterator) loop An_Order := O_List.Value (An_Iterator); Order.Make_Redirection (An_Order, Group, Position); O_List.Put (Temporary_List, An_Order); O_List.Next (An_Iterator); end loop; O_List.Free (The_List); O_List.Copy (Temporary_List, The_List); Ok := True; else Ok := False; end if; end Make_Redirection; procedure Free is An_Order : Order.Object; An_Iterator : O_List.Iterator; begin O_List.Free (The_List); end Free; procedure Show is begin Text_Io.Put_Line ("Order List :"); O_List.Show (The_List); end Show; function First_Order return Order.Object is begin Init; return Value; end First_Order; function Complement_Position (Complement : in String) return Natural is An_Iterator : O_List.Iterator; begin O_List.Init (An_Iterator, The_List); return Order.Complement_Position (O_List.Value (An_Iterator), Complement); end Complement_Position; procedure Init is begin O_List.Init (The_Iterator, The_List); end Init; procedure Next is begin O_List.Next (The_Iterator); end Next; function Value return Order.Object is begin return O_List.Value (The_Iterator); end Value; function Done return Boolean is begin return O_List.Done (The_Iterator); end Done; end Order_List;
nblk1=7 nid=3 hdr6=8 [0x00] rec0=1e rec1=00 rec2=01 rec3=046 [0x01] rec0=1c rec1=00 rec2=06 rec3=002 [0x02] rec0=2d rec1=00 rec2=07 rec3=006 [0x03] rec0=16 rec1=00 rec2=05 rec3=000 [0x04] rec0=2f rec1=00 rec2=03 rec3=012 [0x05] rec0=01 rec1=00 rec2=04 rec3=000 [0x06] rec0=00 rec1=ec rec2=00 rec3=031 tail 0x215457ab086594446a705 0x42a00088462060003 Free Block Chain: 0x3: 0000 00 04 01 8d 80 10 61 74 6f 72 2c 20 54 68 65 5f ┆ ator, The_┆ 0x4: 0000 00 02 00 0c 80 06 5f 4c 69 73 74 3b 06 00 00 00 ┆ _List; ┆ 0x2: 0000 00 00 03 8b 80 15 64 65 72 2e 49 6e 64 65 78 27 ┆ der.Index'┆