DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - downloadIndex: ┃ T V ┃
Length: 3830 (0xef6) Types: TextFile Names: »V«
└─⟦149519bd4⟧ Bits:30000546 8mm tape, Rational 1000, !projects 93-07-13 └─ ⟦124ff5788⟧ »DATA« └─⟦this⟧ └─⟦a7d1ea751⟧ Bits:30000550 8mm tape, Rational 1000, !users!projects 94_04_11 └─ ⟦129cab021⟧ »DATA« └─⟦this⟧ └─⟦f64eaa120⟧ Bits:30000752 8mm tape, Rational 1000, !projects 93 02 16 └─ ⟦6f12a12be⟧ »DATA« └─⟦this⟧ └─⟦2f6cfab89⟧ Bits:30000547 8mm tape, Rational 1000, !projects 94-01-04 └─ ⟦d65440be7⟧ »DATA« └─⟦this⟧
------------------------------------------------------------------------------- with Umps_Defs; package Slot is type Element is private; type Kind is (Integer, String, Character, Boolean, Void); function Make (The_Variable : Standard.String; With_Kind : Kind) return Element; -- make an element with empty value function Make (The_Variable : Standard.String; With_Value : Standard.Integer) return Element; function Make (The_Variable : Standard.String; With_Value : Standard.String) return Element; function Make (The_Variable : Standard.String; With_Value : Standard.Character) return Element; function Make (The_Variable : Standard.String; With_Value : Standard.Boolean) return Element; -- make an element with a specific value function Name_Of (The_Element : Element) return Standard.String; function Kind_Of (The_Element : Element) return Kind; -- used to avoid raising the Illegal_Access_Error exception function Is_Empty_Value (The_Element : Element) return Standard.Boolean; -- used to avoid raising the Empty_Value_Error exception function Value_Of (The_Element : Element) return Standard.String; function Value_Of (The_Element : Element) return Standard.Integer; function Value_Of (The_Element : Element) return Standard.Character; function Value_Of (The_Element : Element) return Standard.Boolean; -- Empty_Value_Error will be raises if Is_Empty_Value (The_Element) is true. -- Illegal_Access_Error is raised when an illegal access on value is trying -- (ie. accessing for an Integer value when the element is a String). Illegal_Access_Error : exception; -- raised by accessing values when the element have not the desired value Empty_Value_Error : exception; -- raised by accessing values when the element is empty -- (ie. Is_Empty_Value is true) type Fields is (On_Name, On_Kind, On_Value, On_None); generic Field : Fields := On_Value; function Is_Equal (Left, Right : Element) return Standard.Boolean; generic Field : Fields := On_Value; function Is_Less (Left, Right : Element) return Standard.Boolean; generic Field : Fields := On_Value; function Is_Most (Left, Right : Element) return Standard.Boolean; -- Fields -- Name : Name_Of (Left) <op> Name_Of (Right) -- Kind : Name and Kind_Of( Left) <op> Kind_Of (Right) -- Value : Name and Kind and Value_Of (Left) <op> Value_of (Right) function Image (The_Element : Element) return Standard.String; procedure Display (The_Element : Element; String_Before : Standard.String := ""); ------------------------------------------------------------------------------- private type Value (Is_Kind_Of : Kind := Void) is record case Is_Kind_Of is when String => String : Umps_Defs.String := (others => Ascii.Nul); when Integer => Integer : Standard.Integer := 0; when Character => Character : Standard.Character := Ascii.Nul; when Boolean => Boolean : Standard.Boolean := False; when Void => Void : Standard.Character := Ascii.Nul; end case; end record; type Element is record The_Name : Umps_Defs.Name := Umps_Defs.Null_Name; The_Kind : Kind := Void; Empty : Standard.Boolean := True; The_Value : Value; end record; end Slot; -------------------------------------------------------------------------------