mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
More generally, an unavailable initializer shouldn't stomp on an available initializer, because it's possible that (for example) a designated initializer will be unavailable but a factory initializer will be available, so one still construct objects of that type. Fixes rdar://problem/26238032.
36 lines
1.1 KiB
Objective-C
36 lines
1.1 KiB
Objective-C
#ifndef IMPORT_AS_MEMBER_CLASS_H
|
|
#define IMPORT_AS_MEMBER_CLASS_H
|
|
|
|
@import Foundation;
|
|
|
|
typedef NS_OPTIONS(NSInteger, IAMSomeClassOptions) {
|
|
IAMSomeClassFuzzyDice = 0x01,
|
|
IAMSomeClassSpoiler = 0x02
|
|
} __attribute__((swift_name("SomeClass.Options")));
|
|
|
|
__attribute__((swift_name("SomeClass")))
|
|
@interface IAMSomeClass : NSObject
|
|
@end
|
|
|
|
__attribute__((swift_name("SomeClass.init(value:)")))
|
|
IAMSomeClass * _Nonnull MakeIAMSomeClass(double x);
|
|
|
|
__attribute__((swift_name("SomeClass.applyOptions(self:_:)")))
|
|
void IAMSomeClassApplyOptions(IAMSomeClass * _Nonnull someClass,
|
|
IAMSomeClassOptions options);
|
|
|
|
@interface UnavailableDefaultInit : NSObject
|
|
-(instancetype)init __attribute__((availability(swift,unavailable)));
|
|
@end
|
|
|
|
@interface UnavailableDefaultInitSub : UnavailableDefaultInit
|
|
@end
|
|
|
|
__attribute__((swift_name("UnavailableDefaultInit.init()")))
|
|
UnavailableDefaultInit * _Nonnull MakeUnavailableDefaultInit(void);
|
|
|
|
__attribute__((swift_name("UnavailableDefaultInitSub.init()")))
|
|
UnavailableDefaultInitSub * _Nonnull MakeUnavailableDefaultInitSub(void);
|
|
|
|
#endif
|