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

⟦420ec87bc⟧ Ada Source

    Length: 5120 (0x1400)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, package body Compteur, seg_047a0b

Derivation

└─⟦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 Counters;

with String_Utilities;
with Syntax_Error;
with Lexical;  
with Compiler_Token;
use Compiler_Token;


package body Compteur is
    procedure Parse is
        Nom : Lexical.Our_String.Variable_String;
        Valeur : Integer;
        Entier : Boolean;

    begin  
        if Lexical.Get_Token = L_Compteur then
            Lexical.Next;
            if Lexical.Get_Token = L_Id then
                Nom := Lexical.Our_String.Value (Lexical.Get_Value);
                Lexical.Next;
                if Lexical.Get_Token = L_Est then
                    Lexical.Next;
                    if Lexical.Get_Token = L_Nbr then  
                        String_Utilities.String_To_Number
                           (Lexical.Get_Value, Valeur, Entier);
                        if Entier then
                            Counters.Create
                               (Lexical.Our_String.Image (Nom), Valeur);
                        else
                            Syntax_Error.Semantique
                               ("Les compteurs n'acceptent que les valeurs entieres");
                        end if;

                        Lexical.Next;
                    else  
                        Syntax_Error.Syntaxique (R_Compteur, "L_Nbr");
                    end if;

                else
                    Syntax_Error.Syntaxique (R_Compteur, "L_Est");
                end if;
            else
                Syntax_Error.Syntaxique (R_Compteur, "L_Id");
            end if;

        else  
            Syntax_Error.Syntaxique (R_Compteur, "L_Compteur");
        end if;
    end Parse;
end Compteur;

E3 Meta Data

    nblk1=4
    nid=3
    hdr6=4
        [0x00] rec0=20 rec1=00 rec2=01 rec3=014
        [0x01] rec0=15 rec1=00 rec2=02 rec3=000
        [0x02] rec0=01 rec1=00 rec2=02 rec3=000
        [0x03] rec0=0e rec1=00 rec2=04 rec3=000
    tail 0x2174b285086547473d035 0x42a00088462060003
Free Block Chain:
  0x3: 0000  00 04 03 fc 80 0f 6e 67 2e 49 6d 61 67 65 20 28  ┆      ng.Image (┆
  0x4: 0000  00 00 01 9e 80 16 20 20 20 20 20 20 20 20 20 20  ┆                ┆