DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400 Tapes

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 Tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download
Index: ┃ B T

⟦89d5d3536⟧ TextFile

    Length: 2033 (0x7f1)
    Types: TextFile
    Names: »B«

Derivation

└─⟦f64eaa120⟧ Bits:30000752 8mm tape, Rational 1000, !projects 93 02 16
    └─ ⟦6f12a12be⟧ »DATA« 
        └─⟦this⟧ 

TextFile

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;