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

⟦4bacde57e⟧ TextFile

    Length: 1418 (0x58a)
    Types: TextFile
    Names: »B«

Derivation

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

TextFile

package body Standard_String is

    Vide : constant Natural := 0;

    procedure Add_Char (A_String : in out Object; A_Char : Character) is  
        New_Length : Natural;
    begin  
        New_Length := A_String.The_Length + 1;
        A_String.The_Length := New_Length;
        A_String.The_Contents (New_Length) := A_Char;
    end Add_Char;

    procedure Reset (A_String : in out Object) is
    begin
        A_String.The_Length := Vide;
    end Reset;

    function Length (A_String : Object) return Natural is
    begin
        return Natural (A_String.The_Length);
    end Length;

    function Get_Contents (A_String : Object) return String is
    begin
        return String (A_String.The_Contents (1 .. A_String.The_Length));
    end Get_Contents;

    procedure Put_Contents (A_String : in out Object; S : String) is  
    begin
        A_String.The_Contents (1 .. S'Last) := S;
        A_String.The_Length := S'Length;
    end Put_Contents;

    procedure Copy (Source : in Object; Target : out Object) is  
    begin
        Target.The_Contents := Source.The_Contents;
        Target.The_Length := Source.The_Length;
    end Copy;

    function "=" (Left, Rigth : Object) return Boolean is
    begin
        if Left.The_Length /= Rigth.The_Length then
            return False;
        else
            return Left.The_Contents = Rigth.The_Contents;
        end if;
    end "=";



end Standard_String;