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

⟦8efdffc40⟧ TextFile

    Length: 1288 (0x508)
    Types: TextFile
    Names: »B«

Derivation

└─⟦2f6cfab89⟧ Bits:30000547 8mm tape, Rational 1000, !projects 94-01-04
    └─ ⟦d65440be7⟧ »DATA« 
        └─⟦this⟧ 

TextFile

package body File is

    Current_Char : Character;
    Lookahead : Boolean;
    The_File : Text_Io.File_Type;

    procedure File_Open (Afile : String) is
        Mode : Text_Io.File_Mode := Text_Io.In_File;

    begin
        Lookahead := False;  
        Text_Io.Open
           (File => The_File, Mode => Mode, Name => Afile, Form => "");
    end File_Open;


    procedure File_Next (Afile : Text_Io.File_Type) is
    begin
        if not Lookahead then
            Text_Io.Get (Afile, Current_Char);
        else
            Lookahead := False;
        end if;
    end File_Next;


    procedure File_Unget (Afile : Text_Io.File_Type) is
    begin
        Lookahead := True;
    end File_Unget;


    function File_At_End (Afile : Text_Io.File_Type) return Boolean is
    begin
        if Lookahead then
            return False;
        elsif Text_Io.End_Of_File (Afile) then
            return True;
        else
            return False;
        end if;
    end File_At_End;


    function File_Value (Afile : Text_Io.File_Type) return Character is
    begin
        return Current_Char;
    end File_Value;


    function File_Get (Afile : Text_Io.File_Type) return Character is
    begin
        File_Next (Afile);
        return File_Value (Afile);
    end File_Get;
end File;