#ifndef _OBJC_OBJECT_H_
#define _OBJC_OBJECT_H_
#include <objc/objc-runtime.h>
@class Protocol;
@interface Object
{
Class isa;
}
+ initialize;
- init;
+ new;
+ free;
- free;
+ alloc;
- copy;
+ allocFromZone:(void *)zone;
- copyFromZone:(void *)zone;
- (void *)zone;
+ class;
+ superclass;
+ (const char *) name;
- class;
- superclass;
- (const char *) name;
- self;
- (unsigned int) hash;
- (BOOL) isEqual:anObject;
- (BOOL) isKindOf: aClassObject;
- (BOOL) isMemberOf: aClassObject;
- (BOOL) isKindOfClassNamed: (const char *)aClassName;
- (BOOL) isMemberOfClassNamed: (const char *)aClassName;
+ (BOOL) instancesRespondTo:(SEL)aSelector;
- (BOOL) respondsTo:(SEL)aSelector;
- (BOOL) conformsTo: (Protocol *)aProtocolObject;
+ (BOOL) conformsTo: (Protocol *)aProtocolObject;
- (struct objc_method_description *) descriptionForMethod:(SEL)aSel;
+ (struct objc_method_description *) descriptionForInstanceMethod:(SEL)aSel;
- (IMP) methodFor:(SEL)aSelector;
+ (IMP) instanceMethodFor:(SEL)aSelector;
- perform:(SEL)aSelector;
- perform:(SEL)aSelector with:anObject;
- perform:(SEL)aSelector with:object1 with:object2;
+ poseAs: aClassObject;
- subclassResponsibility:(SEL)aSelector;
- notImplemented:(SEL)aSelector;
- doesNotRecognize:(SEL)aSelector;
- error:(const char *)aString, ...;
- (void) printForDebugger:(void *)stream;
- awake;
- write:(void *)stream;
- read:(void *)stream;
+ (int) version;
+ setVersion: (int) aVersion;
- forward: (SEL)sel : (marg_list)args;
- performv: (SEL)sel : (marg_list)args;
@end
@interface Object (Archiving)
- startArchiving: (void *)stream;
- finishUnarchiving;
@end
@interface Object (DynamicLoading)
+ finishLoading:(struct mach_header *)header;
+ startUnloading;
@end
OBJC_EXPORT id object_dispose(Object *anObject);
OBJC_EXPORT id object_copy(Object *anObject, unsigned nBytes);
OBJC_EXPORT id object_copyFromZone(Object *anObject, unsigned nBytes, void *z);
OBJC_EXPORT id object_realloc(Object *anObject, unsigned nBytes);
OBJC_EXPORT id object_reallocFromZone(Object *anObject, unsigned nBytes, void *z);
#endif