swift - 参数类型 'Error'与预期的Swift.Error类型不一致

标签 swift error-handling

为什么传递错误给我Argument type 'Error' does not conform to expected type 'Swift.Error'

enum AltError: Error {
    case error(Error), initializesWereNil
}


enum ErrorAlt<Preferred, Error> {
    
    case preferred(Preferred)
    case error(AltError)
    
    init?(_ preferred: Preferred?, _ err: Error?) {
        if let preferred = preferred {
            self = .preferred(preferred)
        } else if let passedError = err {
            self = .error(.error(passedError))
        } else {
            self = .error(.initializesWereNil)
        }
    }
}

最佳答案

Error定义中删除通用类型ErrorAlt:

enum ErrorAlt<Preferred> {
    //...
}

关于swift - 参数类型 'Error'与预期的Swift.Error类型不一致,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62719463/

相关文章:

ios - 登录到 Facebook 评论 iOS (swift) 没有响应

swift - 响应 UITableView 等手势的 UIStackView

swift - 如何更改使用 NSArrayContoller 作为内容源的 NSTableView 的选择颜色?

r - R : Leaving out undefined columns when subsetting a dataframe

php - 自动记录/记录请求 URI 作为 PHP 错误的一部分?

xcode - 转换Swift self.navigationItem.title = show.uppercased()

swift - 在 NSView 中显示控制台输出

ios - swift 2 中的 XML 解析器在设备上返回 false

ruby-on-rails - 如何使用 strong_params 要求嵌套参数

python - python 2.7 Tkinter tcl错误