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

⟦ff8ca5076⟧ Ada Source

    Length: 7168 (0x1c00)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, package Liste_D_Instructions, seg_0469bb

Derivation

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

E3 Source Code



with Lexical;
with Bounded_String;
with Abstract_Tree;
with Symbols;
with Models;  
with Set_Of_Links;
with Set_Of_Connections;

package Liste_D_Instructions is

    type Object is private;


    function Creation return Object;

    procedure Detruire (L : in out Object);

    procedure Attache (  
                       List1 : in out Object;  
                       List2 : in Object  
                       );

    procedure Executer (L : in Object;
                        Models_Table : Models.Object;
                        Symbols_Table : Symbols.Object;
                        Connect : in out Set_Of_Connections.Object;
                        Links : in out Set_Of_Links.Object);

    function Creer_Si (E : in Abstract_Tree.Object;
                       L_Alors : in Object;
                       L_Sinon : in Object) return Object;

    function Creer_Pour (E : in Integer; L_Faire : in Object) return Object;

    function Creer_Affec (N_Var, N_Ext : in Bounded_String.Variable_String;
                          E : in Abstract_Tree.Object) return Object;

    function Creer_Lie_Con
                (V1, V2 : in Bounded_String.Variable_String) return Object;


    function Creer_Delie_Con
                (V1, V2 : in Bounded_String.Variable_String) return Object;

    function Creer_Lie_Lien
                (V1, V2 : in Bounded_String.Variable_String) return Object;

    function Creer_Delie_Lien
                (V1, V2 : in Bounded_String.Variable_String) return Object;

    function Creer_Echanger_Lien
                (V1, V2, V3 : in Bounded_String.Variable_String) return Object;

    function Creer_Liste
                (V1 : in Bounded_String.Variable_String; V2 : Lexical.Token)
                return Object;

    function Creer_Afficher (P1 : in Integer) return Object;

    function Creer_Fin return Object;

    function Creer_Vide return Object;

    procedure Afficher (O : in Object);

private
    type Instruction is (Si_Alors_Sinon, Pour_Faire, Affectation,
                         Lie_Connexion, Delie_Connexion, Lie_Lien, Delie_Lien,
                         Liste_Lien, Echanger_Lien, Afficher, Fin, Vide);

    type Itemtype (I : Instruction := Vide) is
        record
            Genre : Instruction := I;
            case I is
                when Si_Alors_Sinon =>
                    Exp_Cond : Abstract_Tree.Object;

                    Alors : Object;

                    Sinon : Object;
                when Pour_Faire =>
                    Entier : Integer;

                    Faire : Object;
                when Affectation =>
                    Nom_Var : Bounded_String.Variable_String (32);
                    Nom_Extension : Bounded_String.Variable_String (32);

                    Exp_Generale : Abstract_Tree.Object;

                when Lie_Connexion | Delie_Connexion | Lie_Lien | Delie_Lien =>
                    Var1_Lie : Bounded_String.Variable_String (32);

                    Var2_Lie : Bounded_String.Variable_String (32);
                when Liste_Lien =>
                    Var_Liste : Bounded_String.Variable_String (32);

                    Etat : Lexical.Token;

                when Echanger_Lien =>
                    Var1_Ech : Bounded_String.Variable_String (32);

                    Var2_Ech : Bounded_String.Variable_String (32);

                    Var3_Ech : Bounded_String.Variable_String (32);


                when Afficher =>
                    Param1 : Integer;



                when Fin =>
                    null;

                when Vide =>
                    null;

            end case;

        end record;

    type Cell;

    type Object is access Cell;

    type Cell is  
        record
            Info : Itemtype;
            Next : Object;
        end record;

end Liste_D_Instructions;

E3 Meta Data

    nblk1=6
    nid=0
    hdr6=c
        [0x00] rec0=24 rec1=00 rec2=01 rec3=01c
        [0x01] rec0=04 rec1=00 rec2=06 rec3=01c
        [0x02] rec0=1d rec1=00 rec2=03 rec3=092
        [0x03] rec0=05 rec1=00 rec2=04 rec3=018
        [0x04] rec0=1b rec1=00 rec2=05 rec3=04a
        [0x05] rec0=22 rec1=00 rec2=02 rec3=000
    tail 0x21543527886516b3256c4 0x42a00088462060003