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

⟦95497342c⟧ Ada Source

    Length: 4096 (0x1000)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, package Hierarchy, pragma Segmented_Heap Access_String, pragma Segmented_Heap Module, seg_010772

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 Calendar;
with Requirements;
with Remote_Operations;
package Hierarchy is

    type Module is private;
    Nil : constant Module;

    type Module_Iterator is private;


    procedure Build (Model : in String;  
                     Host : in String;
                     Root : out Module;
                     Build_Time : out Calendar.Time);

    procedure Build (Model : in String;  
                     In_Context : in Remote_Operations.Context;
                     Root : out Module;
                     Build_Time : out Calendar.Time);


    function Make (Identifier : in String) return Module;


    function Children_Of (M : in Module) return Module_Iterator;
    function Parent_Of (M : in Module) return Module;


    function Identifier (M : in Module) return String;
    function Simple_Name (M : in Module) return String;
    function Full_Name (M : in Module) return String;

    function Node_Number (M : in Module) return String;
    function Comment (M : in Module) return String;

    function Requirement
                (M : in Module;  
                 Number : in Requirements.Functional_Requirement_Number)
                return String;

    function Done (M : in Module_Iterator) return Boolean;
    function Value (M : in Module_Iterator) return Module;
    procedure Next (M : in out Module_Iterator);

    function Size (M : in Module_Iterator) return Natural;

    function Make (M : in Module) return Module_Iterator;

private

    type Access_String is access String;
    pragma Segmented_Heap (Access_String);

    type Requirement_List is
       array (Requirements.Functional_Requirement_Number) of Access_String;

    type Module_Record is
        record
            Identifier : Access_String;
            Node_Number : Access_String;  
            Comment : Access_String;  
            Requirements : Requirement_List;
            Parent : Module;
            First_Child : Module;
            Next_Sibling : Module;
            Remaining_Children : Natural; -- Used for construction only.
        end record;

    type Module is access Module_Record;
    pragma Segmented_Heap (Module);

    Nil : constant Module := null;

    type Module_Iterator is new Module;

end Hierarchy;

E3 Meta Data

    nblk1=3
    nid=0
    hdr6=6
        [0x00] rec0=23 rec1=00 rec2=01 rec3=060
        [0x01] rec0=1f rec1=00 rec2=02 rec3=00c
        [0x02] rec0=0d rec1=00 rec2=03 rec3=000
    tail 0x2170c8b3082307704b749 0x42a00088462060003