DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - downloadIndex: ┃ T V ┃
Length: 2176 (0x880) Types: TextFile Names: »V«
└─⟦a7d1ea751⟧ Bits:30000550 8mm tape, Rational 1000, !users!projects 94_04_11 └─ ⟦129cab021⟧ »DATA« └─⟦this⟧
with Object; with Scanner; with String_Map_Generic; package Symbol_Table is type Table_Reference is private; -- initialiser la table des symboles procedure Create; -- entrer dans un bloc nomme de la table des symboles procedure Enter (Block_Name : in Scanner.B_String); -- entrer dans un bloc "sans nom" de la table des symboles procedure New_Enter (Block_Name : in out Scanner.B_String); -- quitter le bloc courant de la table des symboles procedure Leave; -- retourne le bloc courant function Current_Block return Scanner.B_String; -- inserer un element dans le bloc courant procedure Insert (Identifier : Scanner.B_String; Content : Object.Reference); -- rechercher si un identificateur existe dans le bloc courant function Is_Found_In_Block (Identifier : Scanner.B_String) return Boolean; -- detruire un identificateur dans le bloc courant procedure Remove (Identifier : Scanner.B_String); -- rechercher si un identificateur existe dans la table des symboles function Is_Found (Identifier : Scanner.B_String) return Boolean; -- mise a jour du contenu de l'identificateur dans la table des symboles procedure Set_Info (Identifier : Scanner.B_String; Content : Object.Reference); -- lecture du contenu de l'identificateur dans la table des symboles function Get_Info (Identifier : Scanner.B_String) return Object.Reference; -- affichage du contenu de la table des symboles procedure Image_Table; -- affichage du contenu du bloc courant procedure Image_Block (Block_Name : Scanner.B_String); private package Block_Table is new String_Map_Generic (Size => Scanner.Max_Size, Range_Type => Object.Reference); type Table_Reference is record Father_Name : Scanner.B_String; Block_Access : Block_Table.Map; end record; package The_Symbol_Table is new String_Map_Generic (Size => Scanner.Max_Size, Range_Type => Table_Reference); end Symbol_Table;