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

⟦7dc353e31⟧ Ada Source

    Length: 3072 (0xc00)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, package Dynamic_Object, seg_045e31

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 Our_String, Text_Io;

package Dynamic_Object is

    No_Natural_Value : exception;
    No_Boolean_Value : exception;
    No_String_Value : exception;

    type Kind_Of_Values is (Undefined_Value, Natural_Value,
                            Boolean_Value, String_Value);

    type Value (Kind : Kind_Of_Values := Undefined_Value) is limited private;

-- creation

    procedure New_Value (V : out Value);

-- access

    function Kind_Of (V : in Value) return Kind_Of_Values;
    function Value_As (V : in Value) return Natural;
    function Value_As (V : in Value) return Boolean;
    function Value_As (V : in Value) return Our_String.Variable_String;
    function Equal (V1 : in Value; V2 : in Value) return Boolean;
    function Image (V : in Value) return String;

-- modification

    procedure Undefine (V : in out Value);
    procedure Set_To (V : in out Value; I : in Natural);
    procedure Set_To (V : in out Value; B : in Boolean);
    procedure Set_To (V : in out Value; S : in Our_String.Variable_String);
    procedure Copy (To_Value : in out Value; The_Value : in Value);

-- liberation

    procedure Dispose (V : in out Value);


private

    type Value (Kind : Kind_Of_Values := Undefined_Value) is
        record
            case Kind is
                when Undefined_Value =>
                    null;
                when Natural_Value =>
                    The_Natural : Natural;  
                when Boolean_Value =>
                    The_Boolean : Boolean;
                when String_Value =>
                    The_String : Our_String.Variable_String;
            end case;
        end record;

end Dynamic_Object;

E3 Meta Data

    nblk1=2
    nid=0
    hdr6=4
        [0x00] rec0=21 rec1=00 rec2=01 rec3=00a
        [0x01] rec0=19 rec1=00 rec2=02 rec3=001
    tail 0x21542711c864c91b7fd87 0x42a00088462060003