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

⟦e3a3bd9ab⟧ Ada Source

    Length: 5120 (0x1400)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, package Ball, seg_01182a

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 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;

E3 Meta Data

    nblk1=4
    nid=0
    hdr6=8
        [0x00] rec0=1b rec1=00 rec2=01 rec3=03a
        [0x01] rec0=0b rec1=00 rec2=03 rec3=018
        [0x02] rec0=14 rec1=00 rec2=02 rec3=03a
        [0x03] rec0=1a rec1=00 rec2=04 rec3=000
    tail 0x2150d02fe823d49a9e8a9 0x42a00088462063c03