]> git.saurik.com Git - apple/objc4.git/blobdiff - runtime/NSObject.h
objc4-551.1.tar.gz
[apple/objc4.git] / runtime / NSObject.h
diff --git a/runtime/NSObject.h b/runtime/NSObject.h
new file mode 100644 (file)
index 0000000..cd35d7e
--- /dev/null
@@ -0,0 +1,98 @@
+/*     NSObject.h
+       Copyright (c) 1994-2012, Apple Inc. All rights reserved.
+*/
+
+#ifndef _OBJC_NSOBJECT_H_
+#define _OBJC_NSOBJECT_H_
+
+#include <objc/objc.h>
+#include <objc/NSObjCRuntime.h>
+
+@class NSString, NSMethodSignature, NSInvocation;
+
+@protocol NSObject
+
+- (BOOL)isEqual:(id)object;
+- (NSUInteger)hash;
+
+- (Class)superclass;
+- (Class)class;
+- (id)self;
+- (struct _NSZone *)zone OBJC_ARC_UNAVAILABLE;
+
+- (id)performSelector:(SEL)aSelector;
+- (id)performSelector:(SEL)aSelector withObject:(id)object;
+- (id)performSelector:(SEL)aSelector withObject:(id)object1 withObject:(id)object2;
+
+- (BOOL)isProxy;
+
+- (BOOL)isKindOfClass:(Class)aClass;
+- (BOOL)isMemberOfClass:(Class)aClass;
+- (BOOL)conformsToProtocol:(Protocol *)aProtocol;
+
+- (BOOL)respondsToSelector:(SEL)aSelector;
+
+- (id)retain OBJC_ARC_UNAVAILABLE;
+- (oneway void)release OBJC_ARC_UNAVAILABLE;
+- (id)autorelease OBJC_ARC_UNAVAILABLE;
+- (NSUInteger)retainCount OBJC_ARC_UNAVAILABLE;
+
+- (NSString *)description;
+@optional
+- (NSString *)debugDescription;
+
+@end
+
+
+__OSX_AVAILABLE_STARTING(__MAC_10_0, __IPHONE_2_0)
+OBJC_ROOT_CLASS
+OBJC_EXPORT
+@interface NSObject <NSObject> {
+    Class isa  OBJC_ISA_AVAILABILITY;
+}
+
++ (void)load;
+
++ (void)initialize;
+- (id)init;
+
++ (id)new;
++ (id)allocWithZone:(struct _NSZone *)zone;
++ (id)alloc;
+- (void)dealloc;
+
+- (void)finalize;
+
+- (id)copy;
+- (id)mutableCopy;
+
++ (id)copyWithZone:(struct _NSZone *)zone OBJC_ARC_UNAVAILABLE;
++ (id)mutableCopyWithZone:(struct _NSZone *)zone OBJC_ARC_UNAVAILABLE;
+
++ (Class)superclass;
++ (Class)class;
++ (BOOL)instancesRespondToSelector:(SEL)aSelector;
++ (BOOL)conformsToProtocol:(Protocol *)protocol;
+- (IMP)methodForSelector:(SEL)aSelector;
++ (IMP)instanceMethodForSelector:(SEL)aSelector;
+- (void)doesNotRecognizeSelector:(SEL)aSelector;
+
+- (id)forwardingTargetForSelector:(SEL)aSelector __OSX_AVAILABLE_STARTING(__MAC_10_5, __IPHONE_2_0);
+- (void)forwardInvocation:(NSInvocation *)anInvocation;
+- (NSMethodSignature *)methodSignatureForSelector:(SEL)aSelector;
+
++ (NSMethodSignature *)instanceMethodSignatureForSelector:(SEL)aSelector;
+
+- (BOOL)allowsWeakReference UNAVAILABLE_ATTRIBUTE;
+- (BOOL)retainWeakReference UNAVAILABLE_ATTRIBUTE;
+
++ (NSString *)description;
+
++ (BOOL)isSubclassOfClass:(Class)aClass;
+
++ (BOOL)resolveClassMethod:(SEL)sel __OSX_AVAILABLE_STARTING(__MAC_10_5, __IPHONE_2_0);
++ (BOOL)resolveInstanceMethod:(SEL)sel __OSX_AVAILABLE_STARTING(__MAC_10_5, __IPHONE_2_0);
+
+@end
+
+#endif