|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - download
Length: 7168 (0x1c00) Types: Ada Source Notes: 03_class, FILE, R1k_Segment, e3_tag, generic, package Slot_Bak, seg_0115c0
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000 └─ ⟦5a81ac88f⟧ »Space Info Vol 1« └─⟦this⟧
with Instance; with Constant_String; package Slot_Bak is type Kinds is (Integer_Value, Boolean_Value, Float_Value, Character_Value, String_Value, Checked_Enumeration_Value, Unchecked_Enumeration_Value, Class_Value); type Object (Kind : Kinds := Integer_Value) is private; -- record variant function Value (I : Integer) return Object; function Value (F : Float) return Object; function Value (B : Boolean) return Object; function Value (C : Character) return Object; function Value (S : String) return Object; function Value (O : Instance.Reference) return Object; function Get (O : Object) return Integer; function Get (O : Object) return Boolean; function Get (O : Object) return Float; function Get (O : Object) return Character; function Get (O : Object) return String; function Get (O : Object) return Instance.Reference; procedure Set (O : in out Object; To : Integer; Changed_Kind : Boolean := False); procedure Set (O : in out Object; To : Boolean; Changed_Kind : Boolean := False); procedure Set (O : in out Object; To : Float; Changed_Kind : Boolean := False); procedure Set (O : in out Object; To : Character; Changed_Kind : Boolean := False); procedure Set (O : in out Object; To : String; Changed_Kind : Boolean := False); procedure Set (O : in out Object; To : Instance.Reference; Changed_Kind : Boolean := False); package Operators is function "=" (Left, Right : Object) return Boolean renames Slot."="; function Is_Same_Type (Left, Right : Object) return Boolean; function "<" (Left, Right : Object) return Boolean; function "<=" (Left, Right : Object) return Boolean; function ">" (Left, Right : Object) return Boolean; function ">=" (Left, Right : Object) return Boolean; end Operators; function Image (O : Object) return String; generic Checked : in Boolean := False; type Values is (<>); package Enumeration_Facilities is function Value (E : Values) return Object; function Get (O : Object) return Values; function Image (O : Object) return String; procedure Set (O : in out Object; To : Values; Changed_Kind : Boolean := False); end Enumeration_Facilities; private type Object (Kind : Kinds := Integer_Value) is record case Kind is when Integer_Value => I_Val : Integer := 0; when Float_Value => F_Val : Float := 0.0; when Boolean_Value => B_Val : Boolean := False; when Character_Value => C_Val : Character := Ascii.Nul; when String_Value => S_Val : Constant_String.Object := Constant_String.Null_Object; when Class_Value => O_Val : Instance.Reference := Instance.Null_Reference; when Unchecked_Enumeration_Value => Ue_Val : Integer := 0; --'pos when Checked_Enumeration_Value => Ce_Val : Constant_String.Object := Constant_String.Null_Object; --'image end case; end record; end Slot_Bak;
nblk1=6 nid=3 hdr6=a [0x00] rec0=1a rec1=00 rec2=01 rec3=04a [0x01] rec0=01 rec1=00 rec2=02 rec3=006 [0x02] rec0=18 rec1=00 rec2=06 rec3=02c [0x03] rec0=1c rec1=00 rec2=05 rec3=04a [0x04] rec0=14 rec1=00 rec2=04 rec3=000 [0x05] rec0=03 rec1=c2 rec2=8e rec3=400 tail 0x2150c8570823783c06b1b 0x42a00088462060003 Free Block Chain: 0x3: 0000 00 00 00 33 80 05 63 61 73 65 3b 05 00 13 20 20 ┆ 3 case; ┆