11#import < Foundation/Foundation.h>
22
3- #define generateVersionDeclarations (V1, V2 ) \
4- __attribute__ ((availability(ios, introduced = V1))) \
5- __attribute__((availability(visionos, introduced = V1))) @interface TNSInterface \
6- ##V2##Plus : NSObject @end \
7- \
8- @interface TNSInterfaceMembers \
9- ##V2 : NSObject @property int property __attribute__ ((availability(ios, introduced = V1))) \
10- __attribute__((availability(visionos, introduced = V1))); \
11- \
12- +(void )staticMethod __attribute__ ((availability(ios, introduced = V1))) \
13- __attribute__((availability(visionos, introduced = V1))); \
14- \
15- -(void )instanceMethod __attribute__ ((availability(ios, introduced = V1))) \
16- __attribute__((availability(visionos, introduced = V1))); \
17- @end \
18- \
19- __attribute__ ((availability(ios, introduced = V1))) \
20- __attribute__((availability(visionos, introduced = V1))) void TNSFunction##V2##Plus(); \
21- \
22- __attribute__ ((availability(ios, introduced = V1))) __attribute__( \
23- (availability(visionos, introduced = V1))) extern const int TNSConstant##V2##Plus; \
24- \
25- enum TNSEnum##V2##Plus { TNSEnum##V2##Member } \
26- __attribute__ ((availability(ios, introduced = V1))) \
27- __attribute__((availability(visionos, introduced = V1)))
3+ #define generateVersionDeclarations (V1, V2 ) \
4+ __attribute__ ((availability(ios, introduced = V1))) \
5+ __attribute__((availability(visionos, introduced = V1))) \
6+ __attribute__((availability(macos, introduced = V1))) \
7+ @interface TNSInterface \
8+ ##V2##Plus : NSObject @end \
9+ \
10+ @interface TNSInterfaceMembers \
11+ ##V2 : NSObject @property int property __attribute__ ((availability(ios, introduced = V1))) \
12+ __attribute__((availability(visionos, introduced = V1))) \
13+ __attribute__((availability(macos, introduced = V1))); \
14+ \
15+ +(void )staticMethod __attribute__ ((availability(ios, introduced = V1))) \
16+ __attribute__((availability(visionos, introduced = V1))) \
17+ __attribute__((availability(macos, introduced = V1))); \
18+ \
19+ -(void )instanceMethod __attribute__ ((availability(ios, introduced = V1))) \
20+ __attribute__((availability(visionos, introduced = V1))) \
21+ __attribute__((availability(macos, introduced = V1))); \
22+ @end \
23+ \
24+ __attribute__ ((availability(ios, introduced = V1))) \
25+ __attribute__((availability(visionos, introduced = V1))) \
26+ __attribute__((availability(macos, introduced = V1))) void \
27+ TNSFunction##V2##Plus(); \
28+ \
29+ __attribute__ ((availability(ios, introduced = V1))) \
30+ __attribute__((availability(visionos, introduced = V1))) \
31+ __attribute__((availability(macos, introduced = V1))) extern const int TNSConstant##V2##Plus; \
32+ \
33+ enum TNSEnum##V2##Plus { TNSEnum##V2##Member } \
34+ __attribute__ ((availability(ios, introduced = V1))) \
35+ __attribute__((availability(visionos, introduced = V1))) \
36+ __attribute__((availability(macos, introduced = V1)))
2837
2938#ifndef generateVersionImpl
3039#define generateVersion (V1, V2 ) generateVersionDeclarations(V1, V2)
@@ -70,6 +79,7 @@ generateMinors(15);
7079
7180__attribute__ ((availability(ios, introduced = MAX_AVAILABILITY)))
7281__attribute__((availability(visionos, introduced = MAX_AVAILABILITY)))
82+ __attribute__((availability(macos, introduced = MAX_AVAILABILITY)))
7383@protocol TNSProtocolNeverAvailable<NSObject>
7484
7585@property(class, readonly) int staticPropertyFromProtocolNeverAvailable;
@@ -88,6 +98,7 @@ __attribute__((availability(visionos, introduced = MAX_AVAILABILITY)))
8898
8999__attribute__ ((availability(ios, introduced = 1.0 )))
90100__attribute__((availability(visionos, introduced = 1.0 )))
101+ __attribute__((availability(macos, introduced = 1.0 )))
91102@protocol TNSProtocolAlwaysAvailable<NSObject>
92103
93104@property(class, readonly) int staticPropertyFromProtocolAlwaysAvailable;
@@ -106,6 +117,7 @@ __attribute__((availability(visionos, introduced = 1.0)))
106117
107118__attribute__ ((availability(ios, introduced = MAX_AVAILABILITY)))
108119__attribute__((availability(visionos, introduced = MAX_AVAILABILITY)))
120+ __attribute__((availability(macos, introduced = MAX_AVAILABILITY)))
109121@interface TNSInterfaceNeverAvailable : TNSInterfaceAlwaysAvailable
110122@end
111123
0 commit comments