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

⟦e22c3654c⟧ TextFile

    Length: 1615 (0x64f)
    Types: TextFile
    Names: »B«

Derivation

└─⟦a7d1ea751⟧ Bits:30000550 8mm tape, Rational 1000, !users!projects 94_04_11
    └─ ⟦129cab021⟧ »DATA« 
        └─⟦this⟧ 

TextFile

with Bounded_String;
with Text_Io;

package body Log_Report is

    Tab_Space_Number : constant Natural := 3;
    Trace_Prompt : constant String := ">>";
    Image_Prompt : constant String := "";
    Error_Prompt : constant String := "##";

    Line_Size : constant Natural := 132;

    Indentation_Level : Natural := 0;
    Tracing_Mode : Boolean := False;

    subtype B_String is Bounded_String.Variable_String (Line_Size);


    function Indent (Level : Natural) return String is
        A_Bs_String : B_String;
    begin
        Bounded_String.Free (A_Bs_String);
        Bounded_String.Set_Length (A_Bs_String, Level * Tab_Space_Number);
        return Bounded_String.Image (A_Bs_String);
    end Indent;


    procedure Image (Line : String) is
    begin
        Text_Io.Put (Indent (Indentation_Level) & Image_Prompt);
        Text_Io.Put_Line (Line);
    end Image;


    procedure Image_Tab is
    begin
        Indentation_Level := Indentation_Level + 1;
    end Image_Tab;


    procedure Image_Untab is
    begin
        Indentation_Level := Indentation_Level - 1;
    end Image_Untab;


    procedure Trace (Line : String) is
    begin
        if Tracing_Mode then
            Text_Io.Put (Trace_Prompt);
            Text_Io.Put_Line (Line);
        end if;
    end Trace;


    procedure Trace_On is
    begin
        Tracing_Mode := True;
    end Trace_On;


    procedure Trace_Off is
    begin
        Tracing_Mode := False;
    end Trace_Off;


    procedure Error (Line : String) is
    begin
        Text_Io.Put (Error_Prompt);
        Text_Io.Put_Line (Line);
    end Error;

end Log_Report;