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

⟦f2042b2bf⟧ Ada Source

    Length: 3072 (0xc00)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, package body Stack_Generic, seg_02dedf

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 Stack_Generic is

    procedure Push (The_Element : in Item; On : in out Object) is
    begin
        if not Is_Full (On) then  
            On.Top := On.Top + 1;
            On.Content (On.Top) := The_Element;
        else
            raise Full;
        end if;
    end Push;


    procedure Pop (The_Element : out Item; From : in out Object) is
    begin
        if not Is_Empty (From) then
            The_Element := From.Content (From.Top);  
            From.Top := From.Top - 1;
        else
            raise Empty;
        end if;
    end Pop;


    function Is_Empty (The_Stack : Object) return Boolean is
    begin
        return The_Stack.Top = Vide;
    end Is_Empty;


    function Is_Full (The_Stack : Object) return Boolean is
    begin
        return The_Stack.Top = The_Stack.Size;
    end Is_Full;
end Stack_Generic;

E3 Meta Data

    nblk1=2
    nid=2
    hdr6=2
        [0x00] rec0=26 rec1=00 rec2=01 rec3=000
        [0x01] rec0=00 rec1=09 rec2=97 rec3=119
    tail 0x21726731084776fb0b7d9 0x42a00088462060003
Free Block Chain:
  0x2: 0000  00 00 00 07 80 01 3b 01 00 00 00 61 63 6b 5f 47  ┆      ;    ack_G┆