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

⟦a3c23eb03⟧ Ada Source

    Length: 7168 (0x1c00)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, package body Ne_Balls_Boxes_Stickers_Conditions, seg_0111cf

Derivation

└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
    └─ ⟦5a81ac88f⟧ »Space Info Vol 1« 
        └─⟦this⟧ 

E3 Source Code



with Instance;
with Tuple_Collection;
with Text_Io;
with Frame_Examples, Slot, Frame, Pack_Test;
use Frame_Examples;


with Pack_Test;

package body Ne_Balls_Boxes_Stickers_Conditions is

    function Pack_It_Restriction_1
                (The_Reference : Ball.Object) return Boolean is

        use Frame_Examples.Ball_Features, Frame_Examples.Box_Features,
            Frame_Examples.Sticker_Features, Slot.Operators;

    begin
        return Ball.Value_Of (The_Reference, Place) = In_The_Heap;
    end Pack_It_Restriction_1;

    function Pack_It_Restriction_2
                (The_Reference : Box.Object) return Boolean is
        use Frame_Examples.Ball_Features, Frame_Examples.Box_Features,
            Frame_Examples.Sticker_Features, Slot.Operators;

    begin
        return Box.Value_Of (The_Reference, State) = State_Slot.Value (Is_Free);
    end Pack_It_Restriction_2;




    function Pack_It_Filter is
       new Tuple_Collection.Join_3 (Collection_1 => Ball.Instances,
                                    --   Restrict_1   => Pack_It_Restriction_1,
                                    Collection_2 => Box.Instances,
                                    --   Restrict_2   => Pack_It_Restriction_2,
                                    Collection_3 => Sticker.Instances,
                                    Match        => Pack_Test);

------------------------------------------------------------
    function Pack_Condition return Tuple_Collection.Object is
    begin  
        Text_Io.Put_Line ("card. tuple collection= " &
                          Natural'Image (Tuple_Collection.Cardinality
                                            (Pack_It_Filter)));
        return Pack_It_Filter;
        -- (Ball.Instances (Kind => Balls_On_Heap),
        --                        Box.Instances (Kind => Empty_Boxes),
        --                        Sticker.Instances (Kind => Unused_Stickers));
    end Pack_Condition;
------------------------------------------------------------


end Ne_Balls_Boxes_Stickers_Conditions;

E3 Meta Data

    nblk1=6
    nid=4
    hdr6=6
        [0x00] rec0=24 rec1=00 rec2=01 rec3=038
        [0x01] rec0=11 rec1=00 rec2=05 rec3=02c
        [0x02] rec0=05 rec1=00 rec2=03 rec3=000
        [0x03] rec0=04 rec1=00 rec2=04 rec3=000
        [0x04] rec0=1b rec1=00 rec2=02 rec3=000
        [0x05] rec0=1b rec1=00 rec2=02 rec3=000
    tail 0x2150c867882383c2cd15e 0x42a00088462063c03
Free Block Chain:
  0x4: 0000  00 02 00 49 80 13 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ┆   I  ----------┆
  0x2: 0000  00 06 03 6a 80 0c 6c 73 5f 4f 6e 5f 48 65 61 70  ┆   j  ls_On_Heap┆
  0x6: 0000  00 00 00 19 80 0d 72 6e 20 42 6f 6f 6c 65 61 6e  ┆      rn Boolean┆