#import #import #import #import #import #import #import @class Foo; NS_ASSUME_NONNULL_BEGIN #pragma clang diagnostic push #pragma clang diagnostic ignored "-Wunknown-warning-option" #pragma clang diagnostic ignored "-Wincompatible-property-type" #pragma clang diagnostic ignored "-Wnullability" #pragma push_macro("_Nullable_result") #if !__has_feature(nullability_nullable_result) #undef _Nullable_result #define _Nullable_result _Nullable #endif __attribute__((objc_subclassing_restricted)) @interface Foo : Base - (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); @end __attribute__((objc_subclassing_restricted)) __attribute__((swift_name("Foo.Inner"))) @interface FooInner : Base - (instancetype)initWith:(Foo *)receiver __attribute__((swift_name("init(_:)"))) __attribute__((objc_designated_initializer)); - (int32_t)propSet:(Foo *)receiver __attribute__((swift_name("propSet(_:)"))); - (BOOL)propVal:(Foo *)receiver __attribute__((swift_name("propVal(_:)"))); - (void)setPropSet:(Foo *)receiver value:(int32_t)value __attribute__((swift_name("setPropSet(_:value:)"))); - (int32_t)foo:(NSString *)receiver __attribute__((swift_name("foo(_:)"))); @end #pragma pop_macro("_Nullable_result") #pragma clang diagnostic pop NS_ASSUME_NONNULL_END