Пересылка ошибки в Swift

Есть ли лучшее решение для передачи ошибки Swift от одной функции к другой?

В данный момент я делаю это так:

enum Error:ErrorType{

    case Error1
    case Error2
}

func func1()throws{
     do{
         try func2()

        }catch Error.Error1{
            throw Error.Error1

        }catch Error.Error2{
            throw Error.Error2
        }
}

func func2()throws{
     // proof something
     throw Error.Error1
}

Итак, чтобы переслать ошибку, мне нужно перехватить все ошибки и снова их выбросить.

Есть ли лучшее решение?

Ответы на вопрос(2)

Ваш ответ на вопрос