1 #pragma clang system_header 2 3 #define nil 0 4 #define BOOL int 5 6 #define NS_ASSUME_NONNULL_BEGIN _Pragma("clang assume_nonnull begin") 7 #define NS_ASSUME_NONNULL_END _Pragma("clang assume_nonnull end") 8 9 NS_ASSUME_NONNULL_BEGIN 10 11 typedef struct _NSZone NSZone; 12 13 @protocol NSObject 14 + (instancetype)alloc; 15 - (instancetype)init; 16 - (instancetype)autorelease; 17 @end 18 19 @protocol NSCopying 20 - (id)copyWithZone:(nullable NSZone *)zone; 21 @end 22 23 @protocol NSMutableCopying 24 - (id)mutableCopyWithZone:(nullable NSZone *)zone; 25 @end 26 27 __attribute__((objc_root_class)) 28 @interface 29 NSObject<NSObject> 30 @end 31 32 @interface NSString : NSObject<NSCopying> 33 - (BOOL)isEqualToString : (NSString *)aString; 34 - (NSString *)stringByAppendingString:(NSString *)aString; 35 @end 36 37 void NSSystemFunctionTakingNonnull(NSString *s); 38 39 @interface NSSystemClass : NSObject 40 - (void) takesNonnull:(NSString *)s; 41 @end 42 43 NS_ASSUME_NONNULL_END 44