|
|
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 - metrics - downloadIndex: T V
Length: 3710 (0xe7e)
Types: TextFile
Names: »V«
└─⟦d10a02448⟧ Bits:30000409 8mm tape, Rational 1000, ENVIRONMENT, D_12_7_3
└─⟦fc9b38f02⟧ »DATA«
└─⟦9b46a407a⟧
└─⟦12c68c704⟧
└─⟦this⟧
└─⟦5f3412b64⟧ Bits:30000745 8mm tape, Rational 1000, ENVIRONMENT 12_6_5 TOOLS
└─⟦91c658230⟧ »DATA«
└─⟦458657fb6⟧
└─⟦220843204⟧
└─⟦this⟧
with Directory;
with System;
package Limit_Operations is
pragma Subsystem (Directory);
pragma Module_Name (4, 3554);
-- Accepts a limit (as in compilation or show usage) and builds the
-- necessary data structures to make enquiries.
-- There are two items of interest, limit specifiers and contexts.
-- A limit specifier specifies how to interpret a 'context'.
-- A context is a set of directory.objects, and is interpreted as directed
-- by the limit string. For example, if the limit string is
-- <WORLDS>, all objects in the same worlds as the contexts are ok.
-- Since there can be many contexts, many worlds can be specified.
-- The valid limit strings are:
--
-- <UNITS> Exact match of context(s)
-- <SUBUNITS> Context(s) and all subunits
-- <DIRECTORY> <DIRECTORIES> Library containing the context(s)
-- <WORLDS> World containing the context(s)
-- <ALL_WORLDS> Anything
-- <ACTIVITY> Worlds in the default activity
-- are used as context. Implies
-- <WORLDS>
-- Any naming string/set. The objects specified by the
-- expression. If an activity is
-- given, it is decomposed. The
-- change limit is set to the
-- 'highest' object encountered
-- (object, library, world)
--
-- Prefixes of the limit strings are accepted
type Error_Status is
(Successful, Unknown_Limit_Specifier, Lock_Error,
Naming_Error, -- If set, name_status has further info
Other_Error);
function Is_Bad (Status : Error_Status) return Boolean;
procedure Initialize (Limit_String : String;
Context : String;
In_Heap : System.Segment;
Change_Limit : out Directory.Change_Limit;
Context_Set : out Directory.Object_Set.Set;
Status : out Error_Status;
Name_Status : out Directory.Naming.Name_Status);
-- The iterator is consumed here. As such it might have to be
-- reset after this call
procedure Initialize (Limit_String : String;
Context : in out Directory.Naming.Iterator;
In_Heap : System.Segment;
Change_Limit : out Directory.Change_Limit;
Context_Set : out Directory.Object_Set.Set;
Status : out Error_Status;
Name_Status : out Directory.Naming.Name_Status);
function Is_In_Limit
(Object : Directory.Object;
Change_Limit : Directory.Change_Limit;
Context_Set : Directory.Object_Set.Set) return Boolean;
procedure Initialize (Limit_String : String;
Context : Directory.Object;
In_Heap : System.Segment;
Change_Limit : out Directory.Change_Limit;
Context_Set : out Directory.Object_Set.Set;
Status : out Error_Status;
Name_Status : out Directory.Naming.Name_Status);
end Limit_Operations;