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

⟦841d9c899⟧ Ada Source

    Length: 7168 (0x1c00)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, package body Complement_Identifier_Array, seg_0449aa

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, Generic_String_Sort_Array;
package body Complement_Identifier_Array is


    package C_Array is new Generic_String_Sort_Array
                              (Element => Identifier.Object,
                               Max_Element_Number => Max_Element,
                               Null_Element => Identifier.Null_Object,
                               Show_Element => Identifier.Show,
                               Get_Key => Identifier.Image);

    The_Array : C_Array.Object;

    procedure Put (Complement_Identifier : in Identifier.Object) is

        Local_Ok : Boolean;

    begin
        C_Array.Put (The_Array, Complement_Identifier, Local_Ok);
    end Put;

    procedure Show is

    begin
        Text_Io.Put_Line ("Complement Identifier Array : ");
        C_Array.Show (The_Array);
    end Show;

    function Number_Of return Natural is

    begin
        return C_Array.Number_Of (The_Array);
    end Number_Of;

    function Is_Empty return Boolean is

    begin
        return C_Array.Is_Empty (The_Array);
    end Is_Empty;

    function Belong (Complement_Name : in String) return Boolean is

    begin
        return not (Index (Complement_Name) = 0);
    end Belong;

    function Index (Complement_Name : in String) return Natural is

    begin
        return C_Array.Index (The_Array, Complement_Name);
    end Index;

    function Image (Complement_Index : in Natural) return String is

        Local_Ok : Boolean;
        Complement_Identifier : Identifier.Object;

    begin
        C_Array.Get (The_Array, Complement_Identifier,
                     Complement_Index, Local_Ok);
        if Local_Ok then
            return Identifier.Image (Complement_Identifier);
        else
            return "";
        end if;
    end Image;

end Complement_Identifier_Array;

E3 Meta Data

    nblk1=6
    nid=2
    hdr6=4
        [0x00] rec0=23 rec1=00 rec2=01 rec3=000
        [0x01] rec0=23 rec1=00 rec2=04 rec3=000
        [0x02] rec0=08 rec1=00 rec2=02 rec3=000
        [0x03] rec0=07 rec1=00 rec2=06 rec3=000
        [0x04] rec0=13 rec1=00 rec2=06 rec3=000
        [0x05] rec0=43 rec1=1a rec2=9a rec3=522
    tail 0x21745d4ae864253ca6e5a 0x42a00088462060003
Free Block Chain:
  0x2: 0000  00 06 00 22 80 1c 43 6f 6d 70 6c 65 6d 65 6e 74  ┆   "  Complement┆
  0x6: 0000  00 05 00 b4 80 3d 20 20 20 20 20 72 65 74 75 72  ┆     =     retur┆
  0x5: 0000  00 03 02 4e 80 13 54 68 65 5f 41 72 72 61 79 2e  ┆   N  The_Array.┆
  0x3: 0000  00 00 00 09 80 06 2e 50 75 74 5f 4c 06 50 6f 73  ┆      .Put_L Pos┆