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

⟦9ea62ebfd⟧ Ada Source

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

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



generic  
    type Element is private;
    with procedure Handle (The_Element : in Element) is <>;
    with function "<" (Left, Right : Element) return Boolean is <>;

package Binary_Tree is
    type Object is limited private;

    Empty_Tree : constant Object;


    procedure Clear_Out (The_Tree : in out Object);


    procedure Build (The_Element : in Element; In_The_Tree : in out Object);
    procedure Insert (The_Element : in Element; In_The_Tree : in out Object);

    procedure Duplicate (The_Source_Tree : in Object;
                         The_Destination_Tree : in out Object);
    procedure Get_Under_Left_Tree
                 (Of_The_Tree : in Object; In_The_Tree : in out Object);
    procedure Get_Under_Right_Tree
                 (Of_The_Tree : in Object; In_The_Tree : in out Object);

    procedure Visit_Lrr (The_Tree : in Object);

    function Is_Empty (The_Tree : Object) return Boolean;
    function Find (The_Element : Element; In_The_Tree : Object) return Boolean;
    procedure Get_Value (Of_The_Tree : in Object;
                         In_The_Element : in out Element);

    Overflow, Tree_Is_Empty : exception;

private

    type Node;
    type Object is access Node;

    type Node is
        record
            Value : Element;
            Under_Left_Tree : Object;
            Under_Right_Tree : Object;
        end record;

    Empty_Tree : constant Object := null;

end Binary_Tree;

E3 Meta Data

    nblk1=2
    nid=0
    hdr6=4
        [0x00] rec0=1d rec1=00 rec2=01 rec3=05a
        [0x01] rec0=15 rec1=00 rec2=02 rec3=001
    tail 0x21728c57a84936c1a4f4b 0x42a00088462060003