]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - test/Analysis/Inputs/system-header-simulator-for-nullability.h
Vendor import of clang trunk r338150:
[FreeBSD/FreeBSD.git] / test / Analysis / Inputs / system-header-simulator-for-nullability.h
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 - (nullable NSString *)nullableStringByAppendingString:(NSString *)aString;
36 + (NSString * _Nonnull) generateString;
37 + (NSString *) generateImplicitlyNonnullString;
38 + (NSString * _Nullable) generatePossiblyNullString;
39 @end
40
41 void NSSystemFunctionTakingNonnull(NSString *s);
42
43 @interface NSSystemClass : NSObject
44 - (void) takesNonnull:(NSString *)s;
45 @end
46
47 NSString* _Nullable getPossiblyNullString();
48 NSString* _Nonnull  getString();
49
50 @protocol MyProtocol
51 - (NSString * _Nonnull) getString;
52 @end
53
54 NS_ASSUME_NONNULL_END