次の 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
Swift がaNullableMethodWithError()
返さAny?
れずに返されるようにするにはどうすればよいAny
ですか?
それとも、Objective-C メソッド シグネチャを記述するより良い方法はありますか?