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

⟦2d7790e2a⟧ Ada Source

    Length: 6144 (0x1800)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, package body Ada, package body Any, package body Cmvc, package body Links, package body Object_Info, package body Utilities, seg_0045ac

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 Io;
with Diana;
with Object_Set;
with Link_Tools;
with String_Table;
with Object_Subclass;
with String_Utilities;
with Semantic_Attributes;
with Links_Implementation;
with Activity_Implementation;
package body Object_Info is

    function "=" (This_Kind : in Directory_Tools.Ada_Object.Compilation_Kind;
                  That_Kind : in Directory_Tools.Ada_Object.Compilation_Kind)
                 return Boolean renames Directory_Tools.Ada_Object."=";

    function "=" (This_Kind : in Directory_Tools.Ada_Object.Unit_Kind;
                  That_Kind : in Directory_Tools.Ada_Object.Unit_Kind)
                 return Boolean renames Directory_Tools.Ada_Object."=";

    function "=" (This_Unit_State : in Directory_Tools.Ada_Object.Unit_State;
                  That_Unit_State : in Directory_Tools.Ada_Object.Unit_State)
                 return Boolean renames Directory_Tools.Ada_Object."=";

    package Utilities is

        type Kinds is (Anything,  
                       Library,  
                       Directory,  
                       World,  
                       Simple_World,  
                       Subsystem,  
                       Root,  
                       View,  
                       Spec_View,  
                       Load_View,  
                       Working_Load_View,  
                       Released_Load_View,  
                       Code_Only_Load_View,  
                       Combined_View,  
                       Units_Directory_Of_View,  
                       Simple_Object,  
                       Ada_Unit,  
                       File, Misc_Simple_Object,  
                       Frozen,  
                       Controlled,  
                       Checked_Out);

        Bad_Object : constant Object := Directory_Tools.Naming.Resolution
                                           ("*** THIS IS A BAD OBJECT ***");

        Bad_Objects : constant Objects := Directory_Tools.Naming.Resolution
                                             ("*** THESE ARE BAD OBJECTS ***");

        function Contains_Objects (This_Object : in Object;
                                   This_Kind   : in Kinds;
                                   Transitive  : in Boolean) return Boolean;
        --
        -- Returns True if the specified object contains at least one object
        -- of the specified kind.

        function Objects_In (This_Object : in Object;
                             This_Kind   : in Kinds;
                             Transitive  : in Boolean) return Objects;
        --
        -- Returns all objects of the specified kind contained by the
        -- specified object.

        function Is_Enclosed (This_Object : in Object;
                              This_Kind   : in Kinds;
                              Transitive  : in Boolean) return Boolean;
        --
        -- Returns True if the specified object is enclosed by a
        -- library of the specified kind.
        --
        -- If Transitive, searches upward through successive enclosing
        -- libraries until the correct kind is found or the root is
        -- encountered. If not Transitive, just looks at the immediate
        -- context.

        function Enclosing_For (This_Object : in Object;
                                This_Kind   : in Kinds;
                                Transitive  : in Boolean) return Object;
        --
        -- This function finds successive enclosing libraries of the original
        -- object and tests each one to determine if it is the correct kind
        -- or not. If so, it returns the library it found. If not, it returns
        -- a bogus object.
        --
        -- If not Transitive, only looks at the immediate context.

    end Utilities;

    package body Utilities is separate;

    package body Any is separate;

    package body Cmvc is separate;

    package body Links is separate;

    package body Ada is separate;

end Object_Info;

E3 Meta Data

    nblk1=5
    nid=0
    hdr6=a
        [0x00] rec0=1c rec1=00 rec2=01 rec3=040
        [0x01] rec0=19 rec1=00 rec2=02 rec3=054
        [0x02] rec0=15 rec1=00 rec2=03 rec3=078
        [0x03] rec0=1b rec1=00 rec2=04 rec3=00e
        [0x04] rec0=05 rec1=00 rec2=05 rec3=000
    tail 0x215003e7e815c6537804b 0x42a00088462061e03