home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
NeXTSTEP 3.0
/
NeXTSTEP3.0.iso
/
NextDeveloper
/
Headers
/
store
/
protocols.h
< prev
Wrap
Text File
|
1992-06-05
|
2KB
|
104 lines
/*
protocols.h
Copyright 1991,NeXT Computer,Inc.
*/
#import <objc/objc.h>
#ifdef RELEASE_2
#import <objc/Object.h>
#endif RELEASE_2
#ifndef RELEASE_2
@class IXStore;
#endif RELEASE_2
#define IX_ALLBLOCKS ((unsigned) -1L)
#define IX_STOREUSERERRBASE (9000)
#define IX_STOREMACHERRBASE IX_STOREUSERERRBASE + (100)
#define IX_STOREUNIXERRBASE IX_STOREUSERERRBASE + (300)
typedef enum IXStoreErrorType {
IX_NoError = IX_STOREUSERERRBASE,
IX_InternalError,
IX_ArgumentError,
IX_QueryEvalError,
IX_QueryTypeError,
IX_QueryAttrError,
IX_QueryImplError,
IX_QueryYaccError,
IX_MemoryError,
IX_LockedError,
IX_MachineError,
IX_VersionError,
IX_DamagedError,
IX_DuplicateError,
IX_NotFoundError,' IX_TooLargeError,
IX_UnixErrorBase = IX_STOREUNIXERRBASE,
IX_MachErrorBase = IX_STOREMACHERRBASE
} IXStoreErrorType;
#ifndef RELEASE_2
@protocol IXBlockAndStoreAccess
#else RELEASE_2
@interface Object (IXBlockAndStoreAccess)
#endif RELEASE_2
// frees storage resources for client
#ifndef RELEASE_2
+ freeFromBlock:(unsigned)aHandle inStore:(IXStore *)aStore;
#else RELEASE_2
+ freeFromBlock:(unsigned)aHandle inStore:(id)aStore;
#endif RELEASE_2
// frees client and storage resources
- freeFromStore;
// finds out where client lives
#ifndef RELEASE_2
- getBlock:(unsigned *)aHandle andStore:(IXStore **)aStore;
#else RELEASE_2
- getBlock:(unsigned *)aHandle andStore:(id *)aStore;
#endif RELEASE_2
// allocates storage resources for client
#ifndef RELEASE_2
- initInStore:(IXStore *)aStore;
#else RELEASE_2
- initInStore:(id)aStore;
#endif RELEASE_2
// inits from existing storage resources
#ifndef RELEASE_2
- initFromBlock:(unsigned)aHandle inStore:(IXStore *)aStore;
#else RELEASE_2
- initFromBlock:(unsigned)aHandle inStore:(id)aStore;
#endif RELEASE_2
@end
#ifndef RELEASE_2
@protocol IXNameAndFileAccess <IXBlockAndStoreAccess>
#else RELEASE_2
@interface Object (IXNameAndFileAccess)
#endif RELEASE_2
// frees storage resources for client
+ freeFromName:(const char *)aName inFile:(const char *)aFile;
// frees client and storage resources
- freeFromStore;
// finds out where client lives
- getName:(const char **)aName andFile:(const char **)aFile;
// allocates storage resources for client
- initWithName:(const char *)aName inFile:(const char *)aFile;
// inits from existing storage resources
- initFromName:(const char *)aName inFile:(const char *)aFile
forWriting:(BOOL)writingFlag;
@end