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

⟦f938655f1⟧ Ada Source

    Length: 4096 (0x1000)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, procedure Main, seg_03fdf0

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 T_Tree, Text_Io, Bounded_String;
use Bounded_String;

procedure Main is

    type Verbe is
        record
            Action : Variable_String (32);
            Syno : Variable_String (32);
        end record;

    function Compare (A, B : Verbe) return Integer;
    procedure Copie (D : in out Verbe; S : Verbe);
    procedure Write (D : Verbe);
    package Arbre is new T_Tree (Verbe, Compare, Copie, Write);


    Data : Verbe;
    Racine, Trouve : Arbre.Ttree;


    function Compare (A, B : Verbe) return Integer is
    begin
        if Image (A.Action) < Image (B.Action) then
            return Arbre.Inf;
        elsif Image (A.Action) = Image (B.Action) then
            return Arbre.Equ;
        else
            return Arbre.Sup;
        end if;

    end Compare;


    procedure Copie (D : in out Verbe; S : Verbe) is
    begin
        Free (D.Action);
        Free (D.Syno);
        Copy (D.Action, Image (S.Action));
        Copy (D.Syno, Image (S.Syno));
    end Copie;

    procedure Write (D : Verbe) is
    begin
        Text_Io.Put_Line ("Action->" & Image (D.Action) &
                          "      Syno ->" & Image (D.Syno));
    end Write;




begin


    Arbre.Create (Racine);


    Free (Data.Action);
    Free (Data.Syno);
    Copy (Data.Action, "seb");
    Copy (Data.Syno, "dit_le_67");
    Arbre.Insert (Data, Racine);

    Free (Data.Action);
    Free (Data.Syno);
    Copy (Data.Action, "bouli");
    Copy (Data.Syno, "dit_pizza");
    Arbre.Insert (Data, Racine);

    Free (Data.Action);
    Free (Data.Syno);
    Copy (Data.Action, "thierry");
    Copy (Data.Syno, "dit_papi");
    Arbre.Insert (Data, Racine);

    Arbre.Search (Data, Racine, Trouve);
    if not Arbre.Empty (Trouve) then

        Free (Data.Action);
        Free (Data.Syno);
        Copy (Data.Action, "les autres");
        Copy (Data.Syno, "dit_les_noeux_noeux");
        Arbre.Insert (Data, Racine);
    end if;

    Arbre.Dump (Racine);

    Text_Io.New_Line;
    Text_Io.New_Line;
    Text_Io.New_Line;


    if not Arbre.Empty (Trouve) then
        Free (Data.Action);
        Free (Data.Syno);
        Copy (Data.Action, "thierry");
        Copy (Data.Syno, "dit_la_classe");
        Arbre.Put (Data, Trouve);
    end if;

    Arbre.Dump (Racine);


end Main;

E3 Meta Data

    nblk1=3
    nid=0
    hdr6=6
        [0x00] rec0=28 rec1=00 rec2=01 rec3=054
        [0x01] rec0=2b rec1=00 rec2=02 rec3=050
        [0x02] rec0=17 rec1=00 rec2=03 rec3=000
    tail 0x2173fde18860c58b8a0dc 0x42a00088462060003