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

⟦424cc2c45⟧ Ada Source

    Length: 3072 (0xc00)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, procedure Delete, seg_03b495, separate Animal

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



with Bird;
with Fish;
with Oo_Ada_Exception;

separate (Animal)

procedure Delete (This_Animal : in out Object; Marker : Boolean := False) is
    This_State_Ptr : State_Ptr := Part_Of (This_Animal);
begin
    case This_State_Ptr.Offspring_No is

        when 0 =>
            Free (This_State_Ptr);
            Application.Delete (Application.Object (This_Animal));

        when 1 =>  
            if not Marker then
                Fish.Delete (Fish.Object (This_Animal));
            else
                Free (This_State_Ptr);
                Application.Delete (Application.Object (This_Animal));
            end if;

        when 2 =>
            if not Marker then
                Bird.Delete (Bird.Object (This_Animal));
            else
                Free (This_State_Ptr);
                Application.Delete (Application.Object (This_Animal));
            end if;

        when others =>
            raise Oo_Ada_Exception.Offspring_Error;

    end case;
end Delete;


E3 Meta Data

    nblk1=2
    nid=0
    hdr6=4
        [0x00] rec0=22 rec1=00 rec2=01 rec3=064
        [0x01] rec0=06 rec1=00 rec2=02 rec3=001
    tail 0x21533e5108517436a1567 0x42a00088462060003