|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 6144 (0x1800) Types: Ada Source Notes: 03_class, FILE, R1k_Segment, e3_tag, package body Logger, seg_010779
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000 └─⟦5a81ac88f⟧ »Space Info Vol 1« └─⟦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;
nblk1=5 nid=0 hdr6=a [0x00] rec0=23 rec1=00 rec2=01 rec3=03c [0x01] rec0=21 rec1=00 rec2=02 rec3=032 [0x02] rec0=21 rec1=00 rec2=03 rec3=004 [0x03] rec0=1f rec1=00 rec2=04 rec3=054 [0x04] rec0=06 rec1=00 rec2=05 rec3=000 tail 0x2150c076a8230771da2f3 0x42a00088462060003