|
|
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: 3918 (0xf4e)
Types: TextFile
Names: »B«
└─⟦149519bd4⟧ Bits:30000546 8mm tape, Rational 1000, !projects 93-07-13
└─⟦124ff5788⟧ »DATA«
└─⟦this⟧
└─⟦a7d1ea751⟧ Bits:30000550 8mm tape, Rational 1000, !users!projects 94_04_11
└─⟦129cab021⟧ »DATA«
└─⟦this⟧
└─⟦f64eaa120⟧ Bits:30000752 8mm tape, Rational 1000, !projects 93 02 16
└─⟦6f12a12be⟧ »DATA«
└─⟦this⟧
└─⟦2f6cfab89⟧ Bits:30000547 8mm tape, Rational 1000, !projects 94-01-04
└─⟦d65440be7⟧ »DATA«
└─⟦this⟧
with Log;
with Profile;
package body Logger is
package Cmvce renames Cmvc_Implementation_Errors;
package Dir renames Directory;
function Format (S : in String) return String is
Offset : constant := Character'Pos ('a') - Character'Pos ('A');
Result : String (S'Range);
begin
for I in S'Range loop
case S (I) is
when 'A' .. 'Z' =>
Result (I) := Character'Val
(Character'Pos (S (I)) + Offset);
when '_' =>
Result (I) := ' ';
when others =>
Result (I) := S (I);
end case;
end loop;
return Result;
end Format;
function Strip (S : in String) return String is
Result : String (S'Range) := S;
begin
for I in S'Range loop
if S (I) not in ' ' .. '~' then
Result (I) := ' ';
end if;
end loop;
return Result;
end Strip;
procedure Status (S : in Simple_Status.Condition;
Interactive : in Boolean := False) is
begin
case Simple_Status.Severity (S) is
when Simple_Status.Normal =>
null;
when Simple_Status.Warning =>
if Interactive then
Debug (Simple_Status.Display_Message (S));
else
Warning (Simple_Status.Display_Message (S));
end if;
when Simple_Status.Problem =>
Negative (Simple_Status.Display_Message (S));
when Simple_Status.Fatal =>
Error (Simple_Status.Display_Message (S));
end case;
end Status;
procedure Status (S : in Directory.Error_Status) is
use Dir;
begin
if S /= Dir.Successful then
Logger.Error ("Directory operation failed because of " &
Format (Dir.Error_Status'Image (S)));
end if;
end Status;
procedure Status (S : in Directory.Naming.Name_Status) is
use Dir.Naming;
begin
if S /= Dir.Naming.Successful then
Logger.Error ("Name resolution failed because of " &
Format (Dir.Naming.Name_Status'Image (S)));
end if;
end Status;
procedure Status (S : in Cmvc_Status) is
begin
if Cmvce.Is_Bad (S) then
Logger.Error (Cmvce.Message (S));
end if;
end Status;
procedure Auxiliary (Message : in String) is
begin
Log.Put_Line (Strip (Message), Kind => Profile.Auxiliary_Msg);
end Auxiliary;
procedure Debug (Message : in String) is
begin
Log.Put_Line (Strip (Message), Kind => Profile.Debug_Msg);
end Debug;
procedure Negative (Message : in String;
Raise_Error : in Boolean := True) is
begin
Log.Put_Line (Strip (Message), Kind => Profile.Negative_Msg);
if Raise_Error then
raise Profile.Error;
end if;
end Negative;
procedure Error (Message : in String; Raise_Error : in Boolean := True) is
begin
Log.Put_Line (Strip (Message), Kind => Profile.Error_Msg);
if Raise_Error then
raise Profile.Error;
end if;
end Error;
procedure Note (Message : in String) is
begin
Log.Put_Line (Strip (Message), Kind => Profile.Note_Msg);
end Note;
procedure Position (Message : in String) is
begin
Log.Put_Line (Strip (Message), Kind => Profile.Position_Msg);
end Position;
procedure Positive (Message : in String) is
begin
Log.Put_Line (Strip (Message), Kind => Profile.Positive_Msg);
end Positive;
procedure Warning (Message : in String) is
begin
Log.Put_Line (Strip (Message), Kind => Profile.Warning_Msg);
end Warning;
end Logger;