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: ┃ T V

⟦0464def0b⟧ TextFile

    Length: 3091 (0xc13)
    Types: TextFile
    Names: »V«

Derivation

└─⟦149519bd4⟧ Bits:30000546 8mm tape, Rational 1000, !projects 93-07-13
    └─ ⟦124ff5788⟧ »DATA« 
        └─⟦this⟧ 
└─⟦f64eaa120⟧ Bits:30000752 8mm tape, Rational 1000, !projects 93 02 16
    └─ ⟦6f12a12be⟧ »DATA« 
        └─⟦this⟧ 

TextFile

with Class;
with Collection;
with Date;
with Instance;

package Ball is

    Class_Name : constant String             := "BALLS";
    Is_Dated   : constant Boolean            := True;
    Date_Mode  : constant Date.Overflow_Mode := Date.Error_Mode;

    Class_Reference : constant Class.Reference :=
       Class.Create (With_Name => Class_Name, Is_Dated => Is_Dated);
    subtype Object is Instance.Reference (Kind => Class_Reference);

    type Colors     is (White, Red, Yellow, Green, Blue);
    type Places     is (Is_On_Heap, Is_In_Box);
    type Existences is (Balls_On_Heap, Balls_In_Box, White_Balls,
                        Red_Balls, Yellow_Balls, Green_Balls,
                        Blue_Balls, Big_Balls, All_Balls);
    type Attributes is (Is_Size, Is_Weight, Is_Color, Is_Place);

    Default_Size   : constant Natural := 10;
    Default_Weight : constant Natural := 10;
    Default_Color  : constant Colors  := White;
    Default_Place  : constant Places  := Is_On_Heap;


    function Size   (O : Object) return Natural;
    function Weight (O : Object) return Natural;
    function Color  (O : Object) return Colors;
    function Place  (O : Object) return Places;

    function Instances return Collection.Object;

    function Instances (Kind : Existences := All_Balls)
                       return Collection.Object;

    function Exist (With_Attributes       : Attributes;
                    Greater_Than          : Natural;
                    In_Kind_Of_Collection : Existences) return Boolean;
    function Exist (With_Attributes       : Attributes;
                    Between               : Natural;
                    And_Value             : Natural;
                    In_Kind_Of_Collection : Existences) return Boolean;

    function Exist (With_Place : Places; In_Kind_Of_Collection : Existences)
                   return Boolean;
    function Exist (With_Color : String; In_Kind_Of_Collection : Existences)
                   return Boolean;


    -- Probleme de surcharge car les types de parametres sont identiques
    ---------------------------------------------------------------------
    -- function Exist (With_Attributes       : Attributes;
    --                    Equal_To : natural) return Boolean;
    -- function Exist (With_Attributes       : Attributes;
    --                    Less_Than : natural) return Boolean;

    function Add (With_Size   : Natural := Default_Size;
                  With_Color  : Colors  := Default_Color;
                  With_Place  : Places  := Default_Place;
                  With_Weight : Natural := Default_Weight) return Object;

    procedure Change (O           : Object;
                      With_Size   : Natural;
                      With_Color  : Colors;
                      With_Place  : Places;
                      With_Weight : Natural);

    procedure Change (O : Object; With_Place : Places);

    procedure Mask   (O : Object);
    procedure Unmask (O : Object);

    procedure Delete (O : Object);

    procedure Clean;
    procedure Mask_All;
    procedure Unmask_All;

end Ball;