DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Rational R1000/400

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦44e9a8dd7⟧ Ada Source

    Length: 4096 (0x1000)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, package body Boxes, seg_045663

Derivation

└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
    └─ ⟦cfc2e13cd⟧ »Space Info Vol 2« 
        └─⟦this⟧ 

E3 Source Code



with Text_Io;

package body Boxes is

    function Equal (B1 : in Box; B2 : in Box) return Boolean is
    begin
        if (B1.The_Type = B2.The_Type) and
           (Bounded_String.Image (B1.Id) = Bounded_String.Image (B2.Id)) and
           Values.Equal (B1.Val, B2.Val) and
           String_Table.Int_List.Equal (B1.Acc, B2.Acc) then
            return True;
        else
            return False;
        end if;
    end Equal;

    procedure Dispose (B : in out Box) is
    begin  
        B.The_Type := Undef;
        Bounded_String.Free (B.Id);
        Values.Dispose (B.Val);
        B.Acc := String_Table.Int_List.Create;
    end Dispose;

    procedure Reset (B : in out Box) is
    begin
        B.The_Type := Undef;
        Bounded_String.Free (B.Id);
        Values.Undefine (B.Val);
        B.Acc := String_Table.Int_List.Create;
    end Reset;

    procedure Copy (To_Box : in out Box; The_Box : in Box) is
    begin
        To_Box.The_Type := The_Box.The_Type;
        Bounded_String.Copy (To_Box.Id, The_Box.Id);
        Values.Copy (To_Box.Val, The_Box.Val);
        To_Box.Acc := The_Box.Acc;
    end Copy;

    procedure Image (L : in My_List) is
        Tmp_String : My_String;
        Iterator : String_Table.Int_List.Listiter;
    begin
        if not String_Table.Int_List.Isempty (L) then
            Iterator := String_Table.Int_List.Makelistiter (L);
            while String_Table.Int_List.More (Iterator) loop
                String_Table.Int_List.Next (Iterator, Tmp_String);
                Text_Io.Put (Bounded_String.Image (Tmp_String));
                Text_Io.Put (" ");
            end loop;
            Text_Io.New_Line;
        else
            Text_Io.Put_Line ("Liste Vide");
        end if;
    end Image;


    procedure Image (B : in Box) is
    begin
        Text_Io.Put_Line ("--------------------------------------------");
        Text_Io.Put_Line ("Type  :" & Kind_Of_Enum'Image (B.The_Type));
        Text_Io.Put_Line ("Id    :" & Bounded_String.Image (B.Id));
        Text_Io.Put_Line ("Val   :" & Values.Image (B.Val));
        Text_Io.Put ("Acc   :");
        Boxes.Image (B.Acc);
    end Image;

end Boxes;

E3 Meta Data

    nblk1=3
    nid=0
    hdr6=6
        [0x00] rec0=24 rec1=00 rec2=01 rec3=01a
        [0x01] rec0=1b rec1=00 rec2=02 rec3=04c
        [0x02] rec0=08 rec1=00 rec2=03 rec3=000
    tail 0x2174732e4864a9a4ff366 0x42a00088462060003