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

⟦25799ccd6⟧ Ada Source

    Length: 6144 (0x1800)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, package body Change_Three_Notes_Rule, package body Change_Two_Notes_Rule, package body M_Rule_Bundle, seg_03a6c9, seg_03b90b, seg_03c083, seg_03c4a6, seg_03c64d, seg_03c982, seg_04a959, seg_04b3c7

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 Alias;  
with M_Frames;  
with Output_Stream;
with Slot;

package body M_Rule_Bundle is

    use M_Kbs;
    use M_Kbs.Kbs;

    type Rule_Names is (Change_Three_Notes, Change_Two_Notes, No_More);

---------------------------------------------------------------------------

    package Change_Three_Notes_Rule is
        function  Premiss return Fact_Queries;
        procedure Action (Objects : Fact_Collection);
    end Change_Three_Notes_Rule;
    package body Change_Three_Notes_Rule is separate;


---------------------------------------------------------------------------

    package Change_Two_Notes_Rule is
        function  Premiss return Fact_Queries;
        procedure Action (Objects : Fact_Collection);
    end Change_Two_Notes_Rule;
    package body Change_Two_Notes_Rule is separate;


---------------------------------------------------------------------------


    package Rule_Bundle is new Rule_Base.Generic_Rule_Bundle
                                  (The_Bundle => M_Kbs.M_Rule_Bundle,
                                   Rule_Names => Rule_Names,
                                   Nothing => Rule_Names'Last,

                                   Rule_1 => Change_Three_Notes,
                                   Premiss_1 => Change_Three_Notes_Rule.Premiss,
                                   Action_1 => Change_Three_Notes_Rule.Action,

                                   Rule_2 => Change_Two_Notes,
                                   Premiss_2 => Change_Two_Notes_Rule.Premiss,
                                   Action_2 => Change_Two_Notes_Rule.Action);

    procedure Do_Action (For_Rule : M_Kbs.Kbs.Rule_Id;
                         On_Facts : M_Kbs.Kbs.Fact_Collection) is
    begin
        Rule_Bundle.Do_Action (For_Rule, On_Facts);
    end Do_Action;
end M_Rule_Bundle;

E3 Meta Data

    nblk1=5
    nid=5
    hdr6=4
        [0x00] rec0=23 rec1=00 rec2=01 rec3=078
        [0x01] rec0=13 rec1=00 rec2=03 rec3=000
        [0x02] rec0=12 rec1=00 rec2=03 rec3=000
        [0x03] rec0=12 rec1=00 rec2=03 rec3=000
        [0x04] rec0=0e rec1=00 rec2=02 rec3=000
    tail 0x21737e1c88508397c0671 0x42a00088462063c03
Free Block Chain:
  0x5: 0000  00 04 03 fc 80 22 20 20 20 20 20 20 20 20 20 20  ┆     "          ┆
  0x4: 0000  00 02 03 fc 80 1c 65 6d 69 73 73 20 72 65 74 75  ┆      emiss retu┆
  0x2: 0000  00 00 03 42 80 01 2c 01 00 3c 20 20 20 20 20 20  ┆   B  ,  <      ┆