|
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: 8680 (0x21e8) Types: TextFile Names: »V«
└─⟦516dceb10⟧ Bits:30000751 8mm tape, Rational 1000, RCI_VADS └─ ⟦9a14c9417⟧ »DATA« └─⟦this⟧
WITH Io_Exceptions; PACKAGE Text_Io IS TYPE File_Type IS LIMITED PRIVATE; TYPE File_Mode IS (In_File, Out_File); TYPE Count IS RANGE 0 .. 1_000_000_000; SUBTYPE Positive_Count IS Count RANGE 1 .. Count'Last; Unbounded : CONSTANT Count := 0; -- line and page length SUBTYPE Field IS Integer RANGE 0 .. Integer'Last; SUBTYPE Number_Base IS Integer RANGE 2 .. 16; TYPE Type_Set IS (Lower_Case, Upper_Case); -- File Management PROCEDURE Create (File : IN OUT File_Type; Mode : File_Mode := Out_File; Name : String := ""; Form : String := ""); PROCEDURE Open (File : IN OUT File_Type; Mode : File_Mode; Name : String; Form : String := ""); PROCEDURE Close (File : IN OUT File_Type); PROCEDURE Delete (File : IN OUT File_Type); PROCEDURE Reset (File : IN OUT File_Type; Mode : File_Mode); PROCEDURE Reset (File : IN OUT File_Type); FUNCTION Mode (File : File_Type) RETURN File_Mode; FUNCTION Name (File : File_Type) RETURN String; FUNCTION Form (File : File_Type) RETURN String; FUNCTION Is_Open (File : File_Type) RETURN Boolean; -- Control of default input and output files PROCEDURE Set_Input (File : File_Type); PROCEDURE Set_Output (File : File_Type); FUNCTION Standard_Input RETURN File_Type; FUNCTION Standard_Output RETURN File_Type; FUNCTION Current_Input RETURN File_Type; FUNCTION Current_Output RETURN File_Type; -- Specification of line and page lengths PROCEDURE Set_Line_Length (File : File_Type; To : Count); PROCEDURE Set_Line_Length (To : Count); PROCEDURE Set_Page_Length (File : File_Type; To : Count); PROCEDURE Set_Page_Length (To : Count); FUNCTION Line_Length (File : File_Type) RETURN Count; FUNCTION Line_Length RETURN Count; FUNCTION Page_Length (File : File_Type) RETURN Count; FUNCTION Page_Length RETURN Count; -- Column, Line and Page Control PROCEDURE New_Line (File : File_Type; Spacing : Positive_Count := 1); PROCEDURE New_Line (Spacing : Positive_Count := 1); PROCEDURE Skip_Line (File : File_Type; Spacing : Positive_Count := 1); PROCEDURE Skip_Line (Spacing : Positive_Count := 1); FUNCTION End_Of_Line (File : File_Type) RETURN Boolean; FUNCTION End_Of_Line RETURN Boolean; PROCEDURE New_Page (File : File_Type); PROCEDURE New_Page; PROCEDURE Skip_Page (File : File_Type); PROCEDURE Skip_Page; FUNCTION End_Of_Page (File : File_Type) RETURN Boolean; FUNCTION End_Of_Page RETURN Boolean; FUNCTION End_Of_File (File : File_Type) RETURN Boolean; FUNCTION End_Of_File RETURN Boolean; PROCEDURE Set_Col (File : File_Type; To : Positive_Count); PROCEDURE Set_Col (To : Positive_Count); PROCEDURE Set_Line (File : File_Type; To : Positive_Count); PROCEDURE Set_Line (To : Positive_Count); FUNCTION Col (File : File_Type) RETURN Positive_Count; FUNCTION Col RETURN Positive_Count; FUNCTION Line (File : File_Type) RETURN Positive_Count; FUNCTION Line RETURN Positive_Count; FUNCTION Page (File : File_Type) RETURN Positive_Count; FUNCTION Page RETURN Positive_Count; -- Character Input-Output PROCEDURE Get (File : File_Type; Item : OUT Character); PROCEDURE Get (Item : OUT Character); PROCEDURE Put (File : File_Type; Item : Character); PROCEDURE Put (Item : Character); -- String Input-Output PROCEDURE Get (File : File_Type; Item : OUT String); PROCEDURE Get (Item : OUT String); PROCEDURE Put (File : File_Type; Item : String); PROCEDURE Put (Item : String); PROCEDURE Get_Line (File : File_Type; Item : OUT String; Last : OUT Natural); PROCEDURE Get_Line (Item : OUT String; Last : OUT Natural); PROCEDURE Put_Line (File : File_Type; Item : String); PROCEDURE Put_Line (Item : String); -- Generic package for Input-Output of Integer Types GENERIC TYPE Num IS RANGE <>; PACKAGE Integer_Io IS Default_Width : Field := Num'Width; Default_Base : Number_Base := 10; PROCEDURE Get (File : File_Type; Item : OUT Num; Width : Field := 0); PROCEDURE Get (Item : OUT Num; Width : Field := 0); PROCEDURE Put (File : File_Type; Item : Num; Width : Field := Default_Width; Base : Number_Base := Default_Base); PROCEDURE Put (Item : Num; Width : Field := Default_Width; Base : Number_Base := Default_Base); PROCEDURE Get (From : String; Item : OUT Num; Last : OUT Positive); PROCEDURE Put (To : OUT String; Item : Num; Base : Number_Base := Default_Base); END Integer_Io; -- Generic package for Input-Output of Floating Point Types GENERIC TYPE Num IS DIGITS <>; PACKAGE Float_Io IS Default_Fore : Field := 2; Default_Aft : Field := Num'Digits - 1; Default_Exp : Field := 3; PROCEDURE Get (File : File_Type; Item : OUT Num; Width : Field := 0); PROCEDURE Get (Item : OUT Num; Width : Field := 0); PROCEDURE Put (File : File_Type; Item : Num; Fore : Field := Default_Fore; Aft : Field := Default_Aft; Exp : Field := Default_Exp); PROCEDURE Put (Item : Num; Fore : Field := Default_Fore; Aft : Field := Default_Aft; Exp : Field := Default_Exp); PROCEDURE Get (From : String; Item : OUT Num; Last : OUT Positive); PROCEDURE Put (To : OUT String; Item : Num; Aft : Field := Default_Aft; Exp : Field := Default_Exp); END Float_Io; -- Generic package for Input-Output of Fixed Point Types GENERIC TYPE Num IS DELTA <>; PACKAGE Fixed_Io IS Default_Fore : Field := Num'Fore; Default_Aft : Field := Num'Aft; Default_Exp : Field := 0; PROCEDURE Get (File : File_Type; Item : OUT Num; Width : Field := 0); PROCEDURE Get (Item : OUT Num; Width : Field := 0); PROCEDURE Put (File : File_Type; Item : Num; Fore : Field := Default_Fore; Aft : Field := Default_Aft; Exp : Field := Default_Exp); PROCEDURE Put (Item : Num; Fore : Field := Default_Fore; Aft : Field := Default_Aft; Exp : Field := Default_Exp); PROCEDURE Get (From : String; Item : OUT Num; Last : OUT Positive); PROCEDURE Put (To : OUT String; Item : Num; Aft : Field := Default_Aft; Exp : Field := Default_Exp); END Fixed_Io; -- Generic package for Input-Output of Enumeration Types GENERIC TYPE Enum IS (<>); PACKAGE Enumeration_Io IS Default_Width : Field := 0; Default_Setting : Type_Set := Upper_Case; PROCEDURE Get (File : File_Type; Item : OUT Enum); PROCEDURE Get (Item : OUT Enum); PROCEDURE Put (File : File_Type; Item : Enum; Width : Field := Default_Width; Set : Type_Set := Default_Setting); PROCEDURE Put (Item : Enum; Width : Field := Default_Width; Set : Type_Set := Default_Setting); PROCEDURE Get (From : String; Item : OUT Enum; Last : OUT Positive); PROCEDURE Put (To : OUT String; Item : Enum; Set : Type_Set := Default_Setting); END Enumeration_Io; -- Exceptions Status_Error : EXCEPTION RENAMES Io_Exceptions.Status_Error; Mode_Error : EXCEPTION RENAMES Io_Exceptions.Mode_Error; Name_Error : EXCEPTION RENAMES Io_Exceptions.Name_Error; Use_Error : EXCEPTION RENAMES Io_Exceptions.Use_Error; Device_Error : EXCEPTION RENAMES Io_Exceptions.Device_Error; End_Error : EXCEPTION RENAMES Io_Exceptions.End_Error; Data_Error : EXCEPTION RENAMES Io_Exceptions.Data_Error; Layout_Error : EXCEPTION RENAMES Io_Exceptions.Layout_Error; PRIVATE TYPE File_Type IS NEW Boolean; END Text_Io;