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

⟦18f7171c1⟧ Ada Source

    Length: 3072 (0xc00)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, package body Les_Clauses_Locales, seg_046cf1, seg_046d3c, seg_046dad, seg_04842c

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 Regles_Ou_Instructions;
with Lex;
with Warning;
with Follow;
with Synchro;
with Error;
with Blocs_Du_Scenario;

package body Les_Clauses_Locales is

    procedure Liste_De_Clauses_Locales (Ok : out Boolean) is
        use Lex;
        Correct : Boolean := True;
    begin
        if Lex.Get_Token = L_Dans then
            while (Correct and Lex.Get_Token = L_Dans) loop  
                if (Lex.Next_Token = L_Id) then
                    Blocs_Du_Scenario.Make_New_Bloc (Nom => Lex.Get_Value);
                    Lex.Next;
                    Regles_Ou_Instructions.Parse (Correct);
                    Blocs_Du_Scenario.End_Of_Bloc;
                else
                    Synchro.Is_On (Error.Liste_De_Clauses_Locales1,
                                   Follow.Liste_De_Clauses_Locales1);
                    Correct := True;
                end if;
            end loop;
        else
            Synchro.Is_On (Error.Liste_De_Clauses_Locales2,
                           Follow.Liste_De_Clauses_Locales2);
            Correct := True;
            if Lex.Get_Token = L_Dans then
                Liste_De_Clauses_Locales (Correct);
            end if;
        end if;

        Ok := Correct;
    end Liste_De_Clauses_Locales;


    procedure Parse (Ok : out Boolean) is
        use Lex;
        Correct : Boolean;
    begin
        case Lex.Get_Token is
            when L_Locales =>
                Lex.Next;
                Liste_De_Clauses_Locales (Correct);
            when others =>
                Warning.Print (Warning.Les_Clauses_Locales);
                Correct := True;
        end case;
        Ok := Correct;
    end Parse;

end Les_Clauses_Locales;


E3 Meta Data

    nblk1=2
    nid=0
    hdr6=4
        [0x00] rec0=1e rec1=00 rec2=01 rec3=076
        [0x01] rec0=1d rec1=00 rec2=02 rec3=001
    tail 0x21749a16286523aa46d55 0x42a00088462060003