考虑这个 Objective-C 类:
@interface TestAPI : NSObject
-(nullable id)aNullableMethod;
-(nullable id)aNullableMethodWithError:(inout NSError **)error;
@end
我TestAPI
用作抽象基类,并希望在 Swift 中继承它。
Swift 将此代码桥接成如下所示(即对应菜单 -> Swift 4.2 界面):
open class TestAPI : NSObject {
open func aNullableMethod() -> Any?
open func aNullableMethodWithError() throws -> Any
}
问题是它aNullableMethodWithError()
可以nil
作为有效值返回。
我如何说服 SwiftaNullableMethodWithError()
返回Any?
而不是返回Any
?
还是有更好的方法来编写 Objective-C 方法签名?