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 - metrics - download
Index: B T

⟦6a1672365⟧ TextFile

    Length: 4540 (0x11bc)
    Types: TextFile
    Names: »B«

Derivation

└─⟦180fe333a⟧ Bits:30000405 8mm tape, Rational 1000, SW CATALOG, 10_20_0
└─⟦180fe333a⟧ Bits:30000537 8mm tape, Rational 1000, SW Catalog 10_20_0
    └─⟦5cb1d1d7f⟧ »DATA« 
        └─⟦3b1ee7bd8⟧ 
            └─⟦this⟧ 

TextFile

package body Attribute_Options is

    ---------------------------------------------------------------------------
    --  This represents the internal state memory of the package.
    --  The CURRENT options for display include the type of queries
    --    supported, as well as the attributes to display.
    --  These can be changed by the following subprograms.
    ---------------------------------------------------------------------------
    type Display_Option is array (Attribute_Type) of Boolean;
    type Display_Record is
        record
            Listing : Listing_Type;
            Choices : Display_Option;
        end record;
    type Query_Type (Choice : Category_Type := Architecture) is
        record
            case Choice is
                when Architecture =>
                    A_Value : Architecture_Category_Type;
                when E_And_V =>
                    E_Value : E_And_V_Criterion_Abbreviation_Type;
                when Language_Feature =>
                    L_Value : Language_Feature_Abbreviation_Type;
                when Statistics =>
                    S_Value : Statistics_Type;
                when Version =>
                    V_Value : Version_Type;
            end case;
        end record;

    Current : Display_Record :=
       (List_By_Name, (Short => False, Test_Name .. Statistics => True));
    Query : Query_Type := Query_Type'(Architecture, Every);
    ---------------------------------------------------------------------------
    --  These subprograms set & observe whether we are listing by name or
    --    by category
    ---------------------------------------------------------------------------
    procedure Set_List (Switch : in Listing_Type := List_By_Name) is
    begin
        Current.Listing := Switch;
    end Set_List;
    --
    function Listing return Listing_Type is
    begin
        return Current.Listing;
    end Listing;
    ---------------------------------------------------------------------------
    --  These subprograms set & observe whether what requests to make from
    --    the Database.
    ---------------------------------------------------------------------------
    procedure Set (Option : in Attribute_Type) is
    begin
        Current.Choices (Option) := True;
    end Set;
    --
    procedure Reset (Option : in Attribute_Type) is
    begin
        Current.Choices (Option) := False;
    end Reset;
    --
    function Is_Set (Option : in Attribute_Type) return Boolean is
    begin
        return Current.Choices (Option);
    end Is_Set;
    ---------------------------------------------------------------------------
    --   These subprograms are aggregate constructors.
    --    They build objects of the query type.
    ---------------------------------------------------------------------------
    procedure Set_Query (Value : in Architecture_Category_Type) is
    begin
        Query := Query_Type'(Architecture, Value);
    end Set_Query;
    --
    procedure Set_Query (Value : in E_And_V_Criterion_Abbreviation_Type) is
    begin
        Query := Query_Type'(E_And_V, Value);
    end Set_Query;
    --
    procedure Set_Query (Value : in Language_Feature_Abbreviation_Type) is
    begin
        Query := Query_Type'(Language_Feature, Value);
    end Set_Query;
    --
    procedure Set_Query (Value : in Statistics_Type) is
    begin
        Query := Query_Type'(Statistics, Value);
    end Set_Query;
    --
    procedure Set_Query (Value : in Version_Type) is
    begin
        Query := Query_Type'(Version, Value);
    end Set_Query;
    ---------------------------------------------------------------------------
    --   These subprograms allow the user to investigate the components of
    --    the private type.
    ---------------------------------------------------------------------------
    function Category return Category_Type is
    begin
        return Query.Choice;
    end Category;
    --
    function Value return Architecture_Category_Type is
    begin
        return Query.A_Value;
    end Value;
    --
    function Value return E_And_V_Criterion_Abbreviation_Type is
    begin
        return Query.E_Value;
    end Value;
    --
    function Value return Language_Feature_Abbreviation_Type is
    begin
        return Query.L_Value;
    end Value;
    --
    function Value return Statistics_Type is
    begin
        return Query.S_Value;
    end Value;
    --
    function Value return Version_Type is
    begin
        return Query.V_Value;
    end Value;

end Attribute_Options;