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: ┃ T V

⟦2d8ba7723⟧ TextFile

    Length: 2154 (0x86a)
    Types: TextFile
    Names: »V«

Derivation

└─⟦d10a02448⟧ Bits:30000409 8mm tape, Rational 1000, ENVIRONMENT, D_12_7_3
    └─ ⟦fc9b38f02⟧ »DATA« 
        └─⟦9b46a407a⟧ 
            └─⟦c84a2ac9b⟧ 
                └─⟦this⟧ 

TextFile

with System;
package Heap_Strings is
    type Astring is access String;
    pragma Segmented_Heap (Astring);

    ---------------------------------------------------------------------
    -- If you're going to do a lot of ASTRING allocation within a
    -- job, getting and initializing a STORAGE_HEAP object (and using
    -- the flavor of calls that take a STORAGE_HEAP) will improve
    -- preformance somewhat.
    ---------------------------------------------------------------------
    type Storage_Heap is private;
    function Initialize return Storage_Heap;


    ---------------------------------------------------------------------
    -- Allocate new ASTRINGs. The order below indicates the relative
    -- performance, the first is slowest, last is the fastest.
    -- The middle call allocates the new ASTRING on the STORAGE_HEAP of
    -- the FROM_POINTER param, if FROM_POINTER is uninitialized, the call
    -- is identical to the first.
    ---------------------------------------------------------------------
    function Allocate (Data : String)                           return Astring;
    function Allocate (Data : String; From_Pointer : Astring)   return Astring;
    function Allocate (Data : String; From_Heap : Storage_Heap) return Astring;


    ---------------------------------------------------------------------
    -- Append to an ASTRING. If the target is uninitialized, append will
    -- allocate the strings on the default STORAGE_HEAP or on the
    -- source's STORAGE_HEAP (if it is an ASTRING and it is initialized).
    ---------------------------------------------------------------------
    procedure Append (To_Target : in out Astring; Source : String);
    procedure Append (To_Target : in out Astring; Source : Astring);

    procedure Replace (In_Target : Astring; The_Char, With_Char : Character);



    -- Hide this one ...
    function Allocate
                (Data : String; From_Heap : System.Segment) return Astring;

    pragma Subsystem (Design_Facility, Closed);
    pragma Module_Name (4, 3580);
    pragma Bias_Key (27);
private
    type Storage_Heap is new System.Segment;
end Heap_Strings;