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

⟦41656b43a⟧ Ada Source

    Length: 3072 (0xc00)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, generic, package Table, seg_04f7e9

Derivation

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

E3 Source Code



generic

    type Item is private;

    Max_Item : Natural;

    Max_Taille_Hash : Natural;

    with function Cle (I : Item) return Natural is <>;

    with function Image (I : Item) return String is <>;

package Table is

    type Object is private;
    type Iterateur is private;

    procedure Initialise (O : in out Object);

    procedure Add_Item (O : in out Object; I : Item);
    procedure Rem_Item (O : in out Object; I : Item);
    procedure Mod_Item (O : in out Object; I, Par : Item);

    function Is_Full (O : Object) return Boolean;
    function Is_In (O : Object; I : Item) return Boolean;

    procedure Dump (O : Object);

    function First_Item (O : in Object) return Iterateur;
    function First_Item (O : Object; Key : Natural) return Iterateur;
    procedure Next_Item (Iter : in out Iterateur; O : Object);
    function Current_Item (Iter : Iterateur; O : Object) return Item;
    function End_Of_Iter (Iter : Iterateur) return Boolean;

    Overflow_Error : exception;
    Not_Found_Error : exception;  
    Iterateur_Error : exception;

private

    type Poste is
        record
            Element : Item;
            Suivant : Natural;
        end record;

    type Tab_Item is array (1 .. Max_Item) of Poste;
    type Tab_Hash is array (1 .. Max_Taille_Hash) of Natural;

    type Object is
        record
            Liste_Poste_Libre : Natural;
            Tableau : Tab_Item;
            Hashing : Tab_Hash;
        end record;

    type Iterateur is
        record
            Indice : Natural;
            Utilise_Cle : Boolean;
            Cle : Natural;
            Hash : Natural;
        end record;

end Table;



E3 Meta Data

    nblk1=2
    nid=0
    hdr6=4
        [0x00] rec0=22 rec1=00 rec2=01 rec3=05e
        [0x01] rec0=23 rec1=00 rec2=02 rec3=001
    tail 0x2154a969687785b4d5ab1 0x42a00088462060003