-- File: DisjointPropDefs.mesa
-- Written by Martin Newell/Dan Fitzpatrick June 1981
-- Last edited: June 25, 1981 2:58 PM
DIRECTORY
DisjointTypes: FROM "DisjointTypes" USING [PropList, PropID];
DisjointPropDefs: DEFINITIONS =
BEGIN
OPEN DisjointTypes;
AllocPropID: PUBLIC PROCEDURE[] RETURNS[PropID];
-- Returns a unique PropID each time it is called
PutProp: PUBLIC PROCEDURE [list: LONG POINTER TO PropList, id: PropID, data: UNSPECIFIED];
-- Enters data into list with the specified PropID
-- Any data already in list with the given PropID is overwritten
PutLongProp: PUBLIC PROCEDURE [list: LONG POINTER TO PropList, id: PropID, data: LONG UNSPECIFIED];
-- Enters long data into list with the specified PropID
-- Any data already in list with the given PropID is overwritten
GetProp: PUBLIC PROCEDURE [list: PropList, id: PropID] RETURNS[UNSPECIFIED];
-- Finds data with specified PropID from list
GetLongProp: PUBLIC PROCEDURE [list: PropList, id: PropID] RETURNS[LONG UNSPECIFIED];
-- Finds long data with specified PropID from list
RemoveProp: PUBLIC PROCEDURE [list: PropList, id: PropID];
-- Removes any data from list with the given PropID
FreePropList: PUBLIC PROCEDURE [list: PropList];
-- Frees all storage used by list
END.