|
|
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 - metrics - downloadIndex: T V
Length: 2446 (0x98e)
Types: TextFile
Names: »V«
└─⟦a7d1ea751⟧ Bits:30000550 8mm tape, Rational 1000, !users!projects 94_04_11
└─⟦129cab021⟧ »DATA«
└─⟦this⟧
with Nodes;
with Lexical;
package Symbol is
type Kind is (Category, Station, Actor, Variable,
Effect, Scene, Begining, Argument, None);
type Types is (Binaire, Fugitif, Temporel, Discret, T_Number, T_Effect,
T_Scene, T_Station, T_Category, T_Begining, T_Void, T_Error);
Global_Table_Size : constant Positive := 32;
Local_Table_Size : constant Positive := 16;
Actor_Table_Size : constant Positive := 8;
-- Creation/Liberation/Activation
procedure New_Table (Length : in Positive);
-- Retour a la table globale
procedure Release_Table;
-- Initialisation de la pile des tables
procedure Init_Tables_Stack;
-- Activation d'une table des symboles locale
procedure Set_Current_Table (Name : in Lexical.Lexeme);
-- Desactivation de la table des symboles courante
procedure Reset_Current_Table;
-- Modification
-- Ajoute une entree a la table des symboles
procedure Add (The_Name : in Lexical.Lexeme; Of_Kind : in Kind);
-- Rattache le code a un effet ou une scene
procedure Set_Code (Name : in Lexical.Lexeme; The_Code : in Nodes.Pnode);
-- Pour une station, une variable
procedure Set_Value (Name : in Lexical.Lexeme; The_Value : in Integer);
-- Pour un argument
procedure Set_Arg_Value (With_Value : in Lexical.Lexeme;
Arg_Number : in Positive);
-- Pour une variable, un acteur
procedure Set_Type (Name : in Lexical.Lexeme; The_Type : in Types);
-- pour une station
procedure Set_Type (From_Station : in Lexical.Lexeme;
With_Category : in Lexical.Lexeme);
-- Consultation
-- Pour un effet ou une scene
function Get_Code (From_Name : in Lexical.Lexeme) return Nodes.Pnode;
-- Pour une station, une variable, un argument
function Get_Value (From_Name : in Lexical.Lexeme) return Integer;
-- Pour un acteur
function Get_Effectfiv_Arg_Name
(Formal_Param : in Lexical.Lexeme) return Lexical.Lexeme;
-- Pour un acteur
function Get_Actor_Number
(In_Station : in Lexical.Lexeme; From_Actor : in Lexical.Lexeme)
return Integer;
-- Pour tout sauf un acteur
function Get_Type (From_Name : in Lexical.Lexeme) return Types;
-- Pour un acteur
function Get_Type
(In_Station : in Lexical.Lexeme; From_Actor : in Lexical.Lexeme)
return Types;
-- Tests
procedure Print;
end Symbol;