DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400 Tapes

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 Tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download
Index: ┃ T V

⟦65fb2714f⟧ TextFile

    Length: 2568 (0xa08)
    Types: TextFile
    Names: »V«

Derivation

└─⟦d10a02448⟧ Bits:30000409 8mm tape, Rational 1000, ENVIRONMENT, D_12_7_3
    └─ ⟦fc9b38f02⟧ »DATA« 
        └─⟦9b46a407a⟧ 
            └─⟦12c68c704⟧ 
                └─⟦this⟧ 
└─⟦5f3412b64⟧ Bits:30000745 8mm tape, Rational 1000, ENVIRONMENT 12_6_5 TOOLS 
    └─ ⟦91c658230⟧ »DATA« 
        └─⟦458657fb6⟧ 
            └─⟦220843204⟧ 
                └─⟦this⟧ 

TextFile

with Diana;
with Directory;

package Units_In_Program is

    pragma Subsystem (Compiler_Utilities);
    pragma Module_Name (4, 3527);

    -- Utilities for interrogating the library units
    -- associated with a loaded program or subsystem.

    type Library_Unit_List is private;

    -- A Library_Unit_List is a list of all library units that were loaded
    -- together to form the program of interest.  Each library unit has a
    -- a unique index.  Ordering of index values is not signficant.

    -- Each library unit has associated with it a name, a kind, a diana
    -- pointer to the actual diana tree, and a set of spec units that
    -- were "looked-through" to get to the unit in the program.

    -- The Spec units for a given library unit are identified by a unique
    -- index.  Ordering of index values has no significance.

    Null_Library_Unit_List : constant Library_Unit_List;

    type Library_Unit_Index is new Natural;

    type Spec_Unit_Index is new Natural;

    pragma Consume_Offset (3);

    -- Set the spec info for a specific library unit.

    function Get_Library_Unit_Count
                (Units : Library_Unit_List) return Library_Unit_Index;

    -- Get the number of library units in the list.

    procedure Get_Library_Unit_Info (Units            :     Library_Unit_List;
                                     Unit             :     Library_Unit_Index;
                                     Unit_Name        : out Diana.Symbol_Rep;
                                     Unit_Kind        : out Diana.Node_Name;
                                     Unit_Defn        : out Diana.Tree;
                                     Unit_Offset      : out Natural;
                                     Unit_Is_Main     : out Boolean;
                                     Unit_Is_Archived : out Boolean;
                                     Archive_Object   : out Directory.Version;
                                     Spec_Unit_Count  : out Spec_Unit_Index);

    -- Get information for a specific library unit.

    procedure Get_Spec_Info (Units     :     Library_Unit_List;
                             Unit      :     Library_Unit_Index;
                             Spec      :     Spec_Unit_Index;
                             Spec_Defn : out Diana.Tree);

    -- Get information for a specific spec.

private

    type Library_Unit_Table;

    type Library_Unit_List is access Library_Unit_Table;
    pragma Segmented_Heap (Library_Unit_List);

    Null_Library_Unit_List : constant Library_Unit_List := null;

end Units_In_Program;