我需要在我创建的任务中使用自定义错误枚举:
enum MyError: Error {
case someError
}
var myTask: Task<MyModel, MyError> = Task { () throws -> MyModel in
// in case of an error:
// throw .someError
// ... perform some work
return MyModel()
}
但是在任务初始化程序开头,我得到了以下错误:
引用'任务'上的初始化程序'init(priority:operation:)'需要类型'MyError'和'Error'等同
我该如何限制Task
仅抛出我的自定义错误类型MyError
的错误?
Task<MyModel, MyError>
? - mattMyError
。 - JAHeliaTask<MyModel, Error>
或者干脆省略声明。你可以抛出任何你想要抛出的异常。 - mattTask<MyModel, MyError>
而不是Task<MyModel, Error>
。 - JAHelia