DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400

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

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦5d74899c5⟧ Ada Source

    Length: 7168 (0x1c00)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, package Traduction_Scenario, seg_048066, seg_048c32, seg_048ca0, seg_048dcf

Derivation

└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
    └─ ⟦5a81ac88f⟧ »Space Info Vol 1« 
        └─⟦this⟧ 
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
    └─ ⟦cfc2e13cd⟧ »Space Info Vol 2« 
        └─⟦this⟧ 

E3 Source Code



with Condition;
with Expression_Fonction;
with Nos_Chaines;
----------------------------------------------------------------------------------
--  paquetage permetant la traduction d'une suite de regle et d'instruction il gere
--  la coherence des types la visibilite des generiques >La procedure do_the permet
--  d'effectuer cette suite de regle ou d'instruction.Les procedures de creation
--  s'insere dans l'analyseur syntaxique a l'interieur des regles grammaticales
package Traduction_Scenario is
    type Selecteur_Regle_Instruction is (Type_Regle, Type_Instruction);
    type Cellule_Regle_Instruction
            (Typ : Selecteur_Regle_Instruction := Type_Instruction) is private;

    type P_Cellule_Regle_Instruction is access Cellule_Regle_Instruction;

    -- cree une nouvelle cellule de type regle
    procedure Make_Regle;

    -- cree une nouvelle cellule de type instruction
    procedure Make_Instruction;

    -- remarque le break_alors n'existe pas il est realise par la fonction add_the_new_condition

    -- debut d'un sinon
    procedure Break_Sinon;

    -- fin d'une regle
    procedure Break_Finsi;

    -- debut d'un bloc le bloc passe en parametre devient le bloc courant
    procedure Start_Bloc;

    -- fin du bloc courant
    procedure Break_End_Of_Bloc (L : in out P_Cellule_Regle_Instruction);


    -- nouvelle affectation numerique le nom du compteur affecte est passe en parametre
    procedure New_Numeric_Function (Nom : Nos_Chaines.String_Text);

    -- associe l'arbre cree avec les fonctions du paquetage expression_fonction
    procedure Add_The_New_Numeric_Function
                 (P : Expression_Fonction.T_Numeric_Function);

    -- nouvelle fonction predefinie dont le nom est passe en parametre
    procedure Name_Of_Function (Nom : Nos_Chaines.String_Text);

    -- ajoute un parametre a la fonction courante
    procedure Add_Function_Parameter
                 (P : Nos_Chaines.String_Text; Is_Text : Boolean := False);

    -- fin de la fonction
    procedure End_Of_Function;

    -- ajoute les parametre a la condition courante
    procedure Add_Condition_Parameter
                 (P : Nos_Chaines.String_Text; Is_Number : Boolean := False);

    -- fin de la condition courante lui associe un type d'evaluation et la formate
    procedure End_Condition_Parameter;

    -- associe l'arbre de condition cree avec les fonctions du paquetage condition
    procedure Add_The_New_Condition (P : Condition.T_Condition);

    -- renvoie la condition courante(permet l'ajout dans l'arbre)
    function Get_Condition return Condition.T_Expression;

    -- execute une suite de regle et instruction
    procedure Do_The (L : P_Cellule_Regle_Instruction);

private

    type Cellule_Regle_Instruction
            (Typ : Selecteur_Regle_Instruction := Type_Instruction) is
        record
            Suivant : P_Cellule_Regle_Instruction;
            case Typ is
                when Type_Regle =>
                    Si_Condition : P_Cellule_Regle_Instruction;
                    Sinon : P_Cellule_Regle_Instruction;
                    Condition_A_Realiser : Condition.T_Condition;
                when Type_Instruction =>
                    Instruction : Expression_Fonction.T_Instruction;

            end case;
        end record;



end Traduction_Scenario;


E3 Meta Data

    nblk1=6
    nid=2
    hdr6=a
        [0x00] rec0=17 rec1=00 rec2=01 rec3=05c
        [0x01] rec0=1b rec1=00 rec2=04 rec3=04a
        [0x02] rec0=00 rec1=00 rec2=06 rec3=00e
        [0x03] rec0=1b rec1=00 rec2=03 rec3=026
        [0x04] rec0=0f rec1=00 rec2=05 rec3=000
        [0x05] rec0=43 rec1=14 rec2=ad rec3=2ca
    tail 0x2174c025e8657a81d62dd 0x42a00088462060003
Free Block Chain:
  0x2: 0000  00 00 00 03 00 00 00 20 47 65 6e 72 65 20 3a 20  ┆        Genre : ┆