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

⟦2d9f22457⟧ Ada Source

    Length: 19456 (0x4c00)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, package body Coincide_Top_With_Search_Top_Rule, package body Find_Action_If_No_Label_Found_Rule, package body Find_Action_Rule, package body Find_Request_Rule, package body Fruit_Rule_Bundle_4, package body Get_Label_Action_Rule, package body Get_Model_Label_Rule, package body Get_Search_Top_Label_Rule, package body Is_Same_Action_Rule, package body Is_Top_And_Selected_Equal_Rule, package body Make_Coincided_Action_Rule, package body Move_Action_Rule, package body Move_Top_Block_Request_Rule, package body Put_Block_Action_Rule, package body Put_Block_Rule, package body Put_Top_Copied_Marker_Up_Rule, package body Search_Free_Action_Rule, package body Search_Top_Request_Rule, package body Search_Top_Rule, seg_04bdcb

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


package body Fruit_Rule_Bundle_4 is

    use Kbs;
    use Kbs.Fact_Base.Predicate;
    use Kbs.Fact_Base.Predicate.System_Defined_Predicate;


    type Rule_Names is (Find_Request, Search_Top_Request,
                        Search_Top, Put_Block, Get_Model_Label,
                        Get_Search_Top_Label, Coincide_Top_With_Search_Top,
                        Is_Top_And_Selected_Equal, Put_Top_Copied_Marker_Up,
                        Move_Top_Block_Request, Move_Action,
                        Make_Coincided_Action, Get_Label_Action, Find_Action,
                        Find_Action_If_No_Label_Found, Is_Same_Action,
                        Put_Block_Action, Search_Free_Action, No_More);



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

    package Get_Model_Label_Rule is
        function  Premiss return Fact_Queries;
        procedure Action (Objects : Fact_Collection);
    end Get_Model_Label_Rule;

    package body Get_Model_Label_Rule is separate;

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

    package Find_Request_Rule is
        function  Premiss return Fact_Queries;
        procedure Action (Objects : Fact_Collection);
    end Find_Request_Rule;

    package body Find_Request_Rule is separate;

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

    package Search_Top_Request_Rule is
        function  Premiss return Fact_Queries;
        procedure Action (Objects : Fact_Collection);
    end Search_Top_Request_Rule;

    package body Search_Top_Request_Rule is separate;

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

    package Search_Top_Rule is
        function  Premiss return Fact_Queries;
        procedure Action (Objects : Fact_Collection);
    end Search_Top_Rule;

    package body Search_Top_Rule is separate;

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

    package Put_Block_Rule is
        function  Premiss return Fact_Queries;
        procedure Action (Objects : Fact_Collection);
    end Put_Block_Rule;

    package body Put_Block_Rule is separate;

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

    package Get_Search_Top_Label_Rule is
        function  Premiss return Fact_Queries;
        procedure Action (Objects : Fact_Collection);
    end Get_Search_Top_Label_Rule;

    package body Get_Search_Top_Label_Rule is separate;

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

    package Coincide_Top_With_Search_Top_Rule is
        function  Premiss return Fact_Queries;
        procedure Action (Objects : Fact_Collection);
    end Coincide_Top_With_Search_Top_Rule;

    package body Coincide_Top_With_Search_Top_Rule is separate;

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

    package Is_Top_And_Selected_Equal_Rule is
        function  Premiss return Fact_Queries;
        procedure Action (Objects : Fact_Collection);
    end Is_Top_And_Selected_Equal_Rule;

    package body Is_Top_And_Selected_Equal_Rule is separate;

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

    package Put_Top_Copied_Marker_Up_Rule is
        function  Premiss return Fact_Queries;
        procedure Action (Objects : Fact_Collection);
    end Put_Top_Copied_Marker_Up_Rule;

    package body Put_Top_Copied_Marker_Up_Rule is separate;

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

    package Move_Top_Block_Request_Rule is
        function  Premiss return Fact_Queries;
        procedure Action (Objects : Fact_Collection);
    end Move_Top_Block_Request_Rule;

    package body Move_Top_Block_Request_Rule is separate;

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

    package Move_Action_Rule is
        function  Premiss return Fact_Queries;
        procedure Action (Objects : Fact_Collection);
    end Move_Action_Rule;

    package body Move_Action_Rule is separate;

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

    package Make_Coincided_Action_Rule is
        function  Premiss return Fact_Queries;
        procedure Action (Objects : Fact_Collection);
    end Make_Coincided_Action_Rule;

    package body Make_Coincided_Action_Rule is separate;

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

    package Get_Label_Action_Rule is
        function  Premiss return Fact_Queries;
        procedure Action (Objects : Fact_Collection);
    end Get_Label_Action_Rule;

    package body Get_Label_Action_Rule is separate;

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

    package Find_Action_Rule is
        function  Premiss return Fact_Queries;
        procedure Action (Objects : Fact_Collection);
    end Find_Action_Rule;

    package body Find_Action_Rule is separate;

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

    package Find_Action_If_No_Label_Found_Rule is
        function  Premiss return Fact_Queries;
        procedure Action (Objects : Fact_Collection);
    end Find_Action_If_No_Label_Found_Rule;

    package body Find_Action_If_No_Label_Found_Rule is separate;

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

    package Is_Same_Action_Rule is
        function  Premiss return act_Queries;
        procedure Action (Objects : Fact_Collection);
    end Is_Same_Action_Rule;

    package body Is_Same_Action_Rule is separate;

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

    package Put_Block_Action_Rule is
        function  Premiss return Fact_Queries;
        procedure Action (Objects : Fact_Collection);
    end Put_Block_Action_Rule;

    package body Put_Block_Action_Rule is separate;

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

    package Search_Free_Action_Rule is
        function  Premiss return Fact_Queries;
        procedure Action (Objects : Fact_Collection);
    end Search_Free_Action_Rule;

    package body Search_Free_Action_Rule is separate;

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



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

               Rule_1     => Find_Request,
               Premiss_1  => Find_Request_Rule.Premiss,
               Action_1   => Find_Request_Rule.Action,

               Rule_2     => Search_Top_Request,
               Premiss_2  => Search_Top_Request_Rule.Premiss,
               Action_2   => Search_Top_Request_Rule.Action,

               Rule_3     => Search_Top,
               Premiss_3  => Search_Top_Rule.Premiss,
               Action_3   => Search_Top_Rule.Action,

               Rule_4     => Put_Block,
               Premiss_4  => Put_Block_Rule.Premiss,
               Action_4   => Put_Block_Rule.Action,

               Rule_5     => Get_Model_Label,
               Premiss_5  => Get_Model_Label_Rule.Premiss,
               Action_5   => Get_Model_Label_Rule.Action,

               Rule_6     => Get_Search_Top_Label,
               Premiss_6  => Get_Search_Top_Label_Rule.Premiss,
               Action_6   => Get_Search_Top_Label_Rule.Action,

               Rule_7     => Coincide_Top_With_Search_Top,
               Premiss_7  => Coincide_Top_With_Search_Top_Rule.Premiss,
               Action_7   => Coincide_Top_With_Search_Top_Rule.Action,

               Rule_8     => Is_Top_And_Selected_Equal,
               Premiss_8  => Is_Top_And_Selected_Equal_Rule.Premiss,
               Action_8   => Is_Top_And_Selected_Equal_Rule.Action,

               Rule_9     => Put_Top_Copied_Marker_Up,
               Premiss_9  => Put_Top_Copied_Marker_Up_Rule.Premiss,
               Action_9   => Put_Top_Copied_Marker_Up_Rule.Action,

               Rule_10    => Move_Top_Block_Request,
               Premiss_10 => Move_Top_Block_Request_Rule.Premiss,
               Action_10  => Move_Top_Block_Request_Rule.Action,

               Rule_11    => Move_Action,
               Premiss_11 => Move_Action_Rule.Premiss,
               Action_11  => Move_Action_Rule.Action,

               Rule_12    => Make_Coincided_Action,
               Premiss_12 => Make_Coincided_Action_Rule.Premiss,
               Action_12  => Make_Coincided_Action_Rule.Action,

               Rule_13    => Get_Label_Action,
               Premiss_13 => Get_Label_Action_Rule.Premiss,
               Action_13  => Get_Label_Action_Rule.Action,

               Rule_14    => Find_Action,
               Premiss_14 => Find_Action_Rule.Premiss,
               Action_14  => Find_Action_Rule.Action,

               Rule_15    => Is_Same_Action,
               Premiss_15 => Is_Same_Action_Rule.Premiss,
               Action_15  => Is_Same_Action_Rule.Action,

               Rule_16    => Put_Block_Action,
               Premiss_16 => Put_Block_Action_Rule.Premiss,
               Action_16  => Put_Block_Action_Rule.Action,

               Rule_17    => Search_Free_Action,
               Premiss_17 => Search_Free_Action_Rule.Premiss,
               Action_17  => Search_Free_Action_Rule.Action,


               Rule_18    => Find_Action_If_No_Label_Found,
               Premiss_18 => Find_Action_If_No_Label_Found_Rule.Premiss,
               Action_18  => Find_Action_If_No_Label_Found_Rule.Action);


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


end Fruit_Rule_Bundle_4;

E3 Meta Data

    nblk1=12
    nid=12
    hdr6=1c
        [0x00] rec0=1e rec1=00 rec2=01 rec3=038
        [0x01] rec0=17 rec1=00 rec2=0b rec3=010
        [0x02] rec0=1d rec1=00 rec2=0f rec3=01a
        [0x03] rec0=00 rec1=00 rec2=10 rec3=006
        [0x04] rec0=19 rec1=00 rec2=0c rec3=08e
        [0x05] rec0=00 rec1=00 rec2=04 rec3=006
        [0x06] rec0=1d rec1=00 rec2=0a rec3=044
        [0x07] rec0=1c rec1=00 rec2=02 rec3=042
        [0x08] rec0=00 rec1=00 rec2=03 rec3=002
        [0x09] rec0=1e rec1=00 rec2=0e rec3=06a
        [0x0a] rec0=19 rec1=00 rec2=07 rec3=044
        [0x0b] rec0=15 rec1=00 rec2=0d rec3=016
        [0x0c] rec0=17 rec1=00 rec2=06 rec3=062
        [0x0d] rec0=10 rec1=00 rec2=11 rec3=000
        [0x0e] rec0=17 rec1=00 rec2=0d rec3=06e
        [0x0f] rec0=16 rec1=00 rec2=06 rec3=028
        [0x10] rec0=19 rec1=00 rec2=11 rec3=038
        [0x11] rec0=05 rec1=00 rec2=08 rec3=000
    tail 0x21751352c868f6f9f080d 0x42a00088462063c03
Free Block Chain:
  0x12: 0000  00 08 00 04 80 01 75 01 30 20 20 20 20 70 61 63  ┆      u 0    pac┆
  0x8: 0000  00 05 00 53 80 17 6e 20 28 46 6f 72 5f 52 75 6c  ┆   S  n (For_Rul┆
  0x5: 0000  00 09 03 fc 80 04 75 6c 65 3b 04 00 00 00 00 30  ┆      ule;     0┆
  0x9: 0000  00 00 00 04 80 01 52 01 02 49 64 3b 20 4f 6e 5f  ┆      R  Id; On_┆