从Objective-C声明全局抛出Swift函数

时间:2018-04-08 14:06:07

标签: objective-c swift

我试图在Objective-C中构建一个适合在Swift中使用的小模块。我在Swift方面将NSError **翻译为throws时遇到了问题。

这是我尝试过的功能定义:

NSString * _Nullable revHashOfFile(NSURL * _Nonnull url, NSError ** error) __attribute__((swift_error(nonnull_error), swift_name("revHash(ofFile:)")));

这个想法应该在Swift中显示如下:

public func revHash(ofFile url: URL) throws -> String

但由于某种原因,生成的界面包含:

public func revHash(ofFile url: URL, _ error: NSErrorPointer) -> String?

(我没有在Swift中写作的共鸣是因为我需要CommonCrypto这是一个库,所以我不能使用桥接标题)

0 个答案:

没有答案