在Swift中抛出多个异常

时间:2017-03-31 10:44:37

标签: swift exception error-handling

一个函数如何抛出多个异常? 例如在Java中会是这样的:

private Int f(Int data, boolean e)
        throws AException, BException,
        CException {...

由于

1 个答案:

答案 0 :(得分:1)

语言不支持,很可能是因为它被认为是反模式。但是,如果有一些独创性,您可能会遇到一个错误情况:

enum MyError: Error {
    case general
    case notFound
    case invalid
    case multiple([MyError])
}

func test() throws {
    throw MyError.multiple([.general, .invalid])
}