-- File DBStorageField.mesa -- Contents: ops on DBStorage.FieldObject's used by modules that don't export FieldObjects. -- Last edited by: -- MBrown on June 10, 1980 3:36 PM -- Cattell on September 14, 1983 3:21 pm DIRECTORY DBStorage USING[FieldHandle], DBStorageConcrete USING[FieldType], DBStorageTID USING[TID]; DBStorageField: DEFINITIONS = BEGIN TuplesetFieldHandle: PROC[] RETURNS[DBStorage.FieldHandle]; -- Returns a field handle that may be used to access the tupleset object of a tuple. IndexFieldHandle: PROC[] RETURNS[DBStorage.FieldHandle]; -- Returns a field handle that may be used to access the index object of a tuple. CheckFieldHandleType: PROC[fh: DBStorage.FieldHandle, t: DBStorageConcrete.FieldType]; -- Generates an ERROR if fh's fieldType is not t. FieldOffset: PROC[fh: DBStorage.FieldHandle] RETURNS[CARDINAL]; NWordsInField: PROC[fh: DBStorage.FieldHandle] RETURNS[CARDINAL]; GroupIDOfField: PROC[fh: DBStorage.FieldHandle] RETURNS[DBStorageTID.TID]; END.--DBStorageField CHANGE LOG Created by MBrown on June 8, 1980 10:34 PM -- Moved all field handle definitions here from DBStoragePrivateA. This seems to be the cheapest --available experiment with exported types and machine-dependent enmumerations, since the field handle --stuff is well localized in the implementation. Moved CopyFieldObject here from StorageImplB. --Added FreeFieldObject. (This "cheap" experiment involves changes to 7 modules!) Changed by MBrown on June 10, 1980 3:35 PM -- Moved all type definitions to DBStorageConcreteField. Changed by Cattell on September 14, 1983 3:09 pm -- Don't need CopyFieldObject, FreeFieldObject any more: FieldHandles are REFs.