|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: B T
Length: 4770 (0x12a2)
Types: TextFile
Names: »B«
└─⟦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⟧
with Database_Interface, Attribute_Options;
use Database_Interface, Attribute_Options;
separate (Inquiry_Operations)
-- This subprogram puts it all together.
-- Using the currently selected Attribute Options, it
-- queries the Database to describe the Test Unit(s) requested,
-- and prints out the relevant Statistics from the currently
-- selected Files.
-- It can be used to output the Report either to the Screen or
-- to a named File.
procedure Put_Attributes (Name : in Unit_Name_Type;
File : in File_Type := Current_Output) is
E_And_V_List : Schema.E_And_V_Criteria_List;
Feature_List : Schema.Language_Features_List;
Align : constant := 25;
begin
New_Line (File);
-- Tests each Option
if Attribute_Options.Is_Set (Test_Name) then
Put (File, " Test Name: ");
Set_Col (File, Align);
Put_Line (File, Name);
end if;
if Attribute_Options.Is_Set (Description) then
Put (File, " Description: ");
Set_Col (File, Align);
Put_Line (File, Get_Description (Name));
end if;
if Attribute_Options.Is_Set (Version) then
Put (File, " Version: ");
Set_Col (File, Align);
Put_Line (File, Schema.Version_Type'Image (Get_Version (Name)));
end if;
if Attribute_Options.Is_Set (Architecture) then
Put (File, " Architecture Category: ");
Set_Col (File, Align);
Put_Line (File, Schema.Architecture_Category_Type'Image
(Get_Arch_Category (Name)));
end if;
if Attribute_Options.Is_Set (E_And_V) then
Put (File, " E and V Criteria: ");
Set_Col (File, Align);
E_And_V_List := Database_Interface.Get_E_And_V_Categories (Name);
if Attribute_Options.Is_Set (Short) then
-- a List_Type iterator: abbreviations
Schema.First (E_And_V_List);
while not Schema.Null_Node (E_And_V_List) loop
Put (File, Schema.E_And_V_Criterion_Abbreviation_Type'Image
(Schema.Current_Element (E_And_V_List)));
Put (File, " ");
exit when Schema.Tail_Node (E_And_V_List);
Schema.Next (E_And_V_List);
end loop;
New_Line (File);
else
-- a List_Type iterator: long form
Schema.First (E_And_V_List);
while not Schema.Null_Node (E_And_V_List) loop
Set_Col (File, Align);
Put (File, Schema.Expand
(Schema.Current_Element (E_And_V_List)));
New_Line (File);
exit when Schema.Tail_Node (E_And_V_List);
Schema.Next (E_And_V_List);
end loop;
end if;
end if;
if Attribute_Options.Is_Set (Language_Feature) then
Put (File, " Language Feature(s): ");
Set_Col (File, Align);
Feature_List := Database_Interface.Get_Features (Name);
if Attribute_Options.Is_Set (Short) then
-- a List_Type iterator: abbreviations
Schema.First (Feature_List);
while not Schema.Null_Node (Feature_List) loop
Put (File, Schema.Language_Feature_Abbreviation_Type'Image
(Schema.Current_Element (Feature_List)));
Put (File, " ");
exit when Schema.Tail_Node (Feature_List);
Schema.Next (Feature_List);
end loop;
New_Line (File);
else
-- a List_Type iterator: long form
Schema.First (Feature_List);
while not Schema.Null_Node (Feature_List) loop
Set_Col (File, Align);
Put (File, Schema.Expand
(Schema.Current_Element (Feature_List)));
New_Line (File);
exit when Schema.Tail_Node (Feature_List);
Schema.Next (Feature_List);
end loop;
end if;
end if;
if Attribute_Options.Is_Set (Statistics) then
if not Attribute_Options.Is_Set (Short) then
Put (File, " Statistics: ");
Set_Col (File, Align);
Put_Line (File, Schema.Statistics_Type'Image
(Get_Statistics (Name)));
end if;
Put_Files (Name, Current_Files, File);
New_Line (File);
end if;
exception
when Not_Found =>
New_Line (Standard_Output);
Put (Standard_Output, "*** Sorry, ");
Put (Standard_Output, Name);
Put_Line (Standard_Output, " does not have a Database entry.");
New_Line (Standard_Output);
end Put_Attributes;
--*****************************************************************************