Native: add an option to disable exported Swift member name mangling
This commit supports `objcExportDisableSwiftMemberNameMangling=true` binary option, which disables mangling for Swift names in generated Objective-C headers, but keeps mangling for Objective-C names. Enabling it might cause issues in some cases with actual clashes. ^KT-53638 Fixed
This commit is contained in:
committed by
Space Team
parent
1b016d0bce
commit
e2640b4afa
@@ -1499,6 +1499,33 @@ __attribute__((swift_name("Person.WorkerContractor")))
|
||||
@property (readonly) int32_t id __attribute__((swift_name("id")));
|
||||
@end
|
||||
|
||||
__attribute__((swift_name("SwiftNameManglingI1")))
|
||||
@protocol KtSwiftNameManglingI1
|
||||
@required
|
||||
- (int32_t)clashingMethod __attribute__((swift_name("clashingMethod()")));
|
||||
- (int32_t)clashingMethodWithObjCNameInI1 __attribute__((swift_name("swiftClashingMethodWithObjCNameInI1()")));
|
||||
- (int32_t)swiftClashingMethodWithObjCNameInI2 __attribute__((swift_name("swiftClashingMethodWithObjCNameInI2()")));
|
||||
- (int32_t)clashingMethodWithObjCNameInBoth __attribute__((swift_name("swiftClashingMethodWithObjCNameInBoth()")));
|
||||
@property (readonly) int32_t clashingProperty __attribute__((swift_name("clashingProperty")));
|
||||
@end
|
||||
|
||||
__attribute__((swift_name("SwiftNameManglingI2")))
|
||||
@protocol KtSwiftNameManglingI2
|
||||
@required
|
||||
- (id)clashingMethod __attribute__((swift_name("clashingMethod()")));
|
||||
- (id)swiftClashingMethodWithObjCNameInI1 __attribute__((swift_name("swiftClashingMethodWithObjCNameInI1()")));
|
||||
- (id)clashingMethodWithObjCNameInI2 __attribute__((swift_name("swiftClashingMethodWithObjCNameInI2()")));
|
||||
- (id)clashingMethodWithObjCNameInBoth __attribute__((swift_name("swiftClashingMethodWithObjCNameInBoth()")));
|
||||
@property (readonly) id clashingProperty __attribute__((swift_name("clashingProperty")));
|
||||
@end
|
||||
|
||||
__attribute__((objc_subclassing_restricted))
|
||||
__attribute__((swift_name("SwiftNameManglingKt")))
|
||||
@interface KtSwiftNameManglingKt : KtBase
|
||||
+ (id<KtSwiftNameManglingI1>)i1 __attribute__((swift_name("i1()")));
|
||||
+ (id<KtSwiftNameManglingI2>)i2 __attribute__((swift_name("i2()")));
|
||||
@end
|
||||
|
||||
__attribute__((objc_subclassing_restricted))
|
||||
__attribute__((swift_name("ThrowableAsError")))
|
||||
@interface KtThrowableAsError : KtKotlinThrowable
|
||||
|
||||
Reference in New Issue
Block a user