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: 7507 (0x1d53) 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 Directory; with Our_Generic_String; package Object_Management_System is -- IMPORTANT : -- -- pour l'instant, uniquement les library_object de subclass -- library_subclass et unix_file_subclass sont traites.... -- -- est presente egalement une ebauche des library_object de subclass -- c_unit_subclass type Subclass_Enumeration is new Natural range 0 .. 63; Unknown_Subclass : constant Subclass_Enumeration := 0; Library_Subclass : constant Subclass_Enumeration := 1; C_Unit_Subclass : constant Subclass_Enumeration := 2; Shell_Subclass : constant Subclass_Enumeration := 3; Comp_Lib_Subclass : constant Subclass_Enumeration := 4; Archive_Subclass : constant Subclass_Enumeration := 5; Image_Subclass : constant Subclass_Enumeration := 6; Unix_File_Subclass : constant Subclass_Enumeration := 7; type Library_Object (Subclass : Subclass_Enumeration := Unknown_Subclass) is private; function Nil return Library_Object; function Is_Nil (The_Object : Library_Object) return Boolean; function In_Text (The_Object : Library_Object) return String; function Subclass_Of (The_Object : Library_Object) return Subclass_Enumeration; function Equal (Subclass1, Subclass2 : Subclass_Enumeration) return Boolean; function Image (The_Subclass : Subclass_Enumeration) return String; function Value (S : String) return Subclass_Enumeration; type Iterator is private; procedure Reset (Iter : in out Iterator); procedure Next (Iter : in out Iterator); function Done (Iter : Iterator) return Boolean; function Value (Iter : Iterator) return Library_Object; package Any_Object is function Is_Library (Any_Object : Library_Object) return Boolean; function Is_C_Unit (Any_Object : Library_Object) return Boolean; function Is_Unix_File (Any_Object : Library_Object) return Boolean; function Make_Library_Object (The_Name : String; The_Subclass : Subclass_Enumeration := Object_Management_System.Unix_File_Subclass) return Library_Object; procedure Create (The_Object : in out Library_Object; The_Name : String; The_Subclass : Subclass_Enumeration := Object_Management_System.Unix_File_Subclass); procedure Move (The_Object : in out Library_Object; New_Name : String); procedure Delete (The_Object : in out Library_Object); function Enclosing_Library (The_Object : Library_Object) return Library_Object; function Image (The_Object : Library_Object) return String; -- la fonction image renvoie une string contenant dans l'ordre : -- "nom_de_l_objet etat subclass type function Value (The_String : String) return Library_Object; -- renvoie le library_object qui correspond a la ligne donnee en -- parametre. -- Ceci en tenant compte de l'ordre indique pour la fonction image. end Any_Object; package Library is type Library_Kind is (Not_A_Library, A_Directory, Subsystem_Spec, Subsystem_Body); function Kind (The_Library : Library_Object) return Library_Kind; function Image (The_Kind : Library_Kind) return String; function Is_Directory (The_Library : Library_Object) return Boolean; function Is_Subsystem_Spec (The_Library : Library_Object) return Boolean; function Is_Subsystem_Body (The_Library : Library_Object) return Boolean; function Root return Library_Object; function Home return Library_Object; function Enclosing_Library return Library_Object; procedure Create (The_Library : in out Library_Object; Name : String; Kind : Library_Kind); function Child (The_Library : Library_Object; Child_Name : String) return Library_Object; function Children (The_Library : Library_Object; Subclass : Subclass_Enumeration := Object_Management_System.Unknown_Subclass) return Iterator; end Library; package C_Unit is type Unit_Kind is (Not_A_C_Unit, C_Main, C_Spec, C_Body); type Unit_State is (Nonexistent, Source, Compiled, Linked); function Image (The_Unit_Kind : Unit_Kind) return String; function Image (The_Unit_State : Unit_State) return String; function Kind (The_C_Unit : Library_Object) return Unit_Kind; function State (The_C_Unit : Library_Object) return Unit_State; function Is_Spec (The_C_Unit : Library_Object) return Boolean; function Is_Body (The_C_Unit : Library_Object) return Boolean; function Is_Main (The_C_Unit : Library_Object) return Boolean; function Is_Source (The_C_Unit : Library_Object) return Boolean; function Is_Compiled (The_C_Unit : Library_Object) return Boolean; function Is_Linked (The_C_Unit : Library_Object) return Boolean; procedure Create (The_C_Unit : in out Library_Object; Name : String; Kind : Unit_Kind); end C_Unit; package Unix_View is function Get_Iterator_On_Files return Directory.Iterator; function Image (The_Object : Directory.Object) return String; -- renvoie une string contenant les informations dans l'ordre suivant : -- "nom_du_fichier type droits proprietaire taille -- date_de_derniere_modification" function Value (The_String : String) return Directory.Object; -- renvoie le directory.object (le fichier) correspondant a la -- ligne donnee en parametre. -- Utilise l'ordre defini ci_dessus pour retrouver cette ligne function Library_Object_Of (The_Object : Directory.Object) return Library_Object; -- renvoie le library_object correspondant au directory_object donnee -- en parametre end Unix_View; private package Gs is new Our_Generic_String (Default_Maximal_Length => 256); type Library_Object (Subclass : Subclass_Enumeration := Unknown_Subclass) is record Name : Gs.Object; case Subclass is when Library_Subclass => Unix_Library : Directory.Object := Directory.Nil; Kind : Library.Library_Kind; when C_Unit_Subclass => C_Kind : C_Unit.Unit_Kind; C_State : C_Unit.Unit_State; Source_File : Directory.Object := Directory.Nil; Object_File : Directory.Object := Directory.Nil; Exec_File : Directory.Object := Directory.Nil; when Unix_File_Subclass => Unix_File : Directory.Object := Directory.Nil; when Unknown_Subclass => null; when others => Unix_Object : Directory.Object := Directory.Nil; end case; end record; Maximal_Element_Number : constant := 256; type Iterator is new Natural range 0 .. Maximal_Element_Number; end Object_Management_System;