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

⟦b9b1430a0⟧ TextFile

    Length: 1412 (0x584)
    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 Trace;

package body Symbols is

    procedure Create_Map (New_Table : in out Table) is
    begin
        Trace.Display ("creation nouvelle table de symboles...");
        My_Table.Initialize (New_Table.Map);  
        My_Table.Init (New_Table.Iter, New_Table.Map);
    end Create_Map;

    procedure Insert (The_Symbol : Scanner.Lexeme;
                      In_Table : in out Table;
                      With_Value : Object.Reference) is
    begin  
        Trace.Display ("insertion symbole dans la table...");
        Trace.Display (The_Symbol);
        Trace.Display (With_Value);
        My_Table.Define (In_Table.Map, Bounded_String.Image (The_Symbol),
                         With_Value, False);  
    end Insert;

    procedure Find (The_Symbol : Scanner.Lexeme;
                    In_Table : Table;
                    Value : in out Object.Reference;
                    Success : out Boolean) is
        Found : Boolean;
    begin
        My_Table.Find (In_Table.Map, Bounded_String.Image (The_Symbol),
                       Value, Found);
        Success := Found;
    end Find;

    function Nil return Table is
        A_Table : Table;
    begin
        A_Table.Map := My_Table.Nil;
        return A_Table;
    end Nil;

    function Is_Nil (The_Table : Table) return Boolean is
    begin
        return My_Table.Is_Nil (The_Table.Map);

    end Is_Nil;

end Symbols;