У меня возникли проблемы с переходом от Swift 1.2 до 2.0, особенно с пониманием обработки ошибок при вызове методов из API объектного-c. Например, я не могу правильно реализовать метод checkResourceIsReachableAndReturnError
. Согласно документации Swift для этого метода, он вернет Bool. Я хочу, чтобы проверить, существует ли папка (self.baseURL
) и попробовал следующие два подхода:Вызов checkResourceIsReachableAndReturnError в Swift 2.0
let folderExists: Bool
do{
try folderExists = self.baseURL!.checkResourceIsReachableAndReturnError(){
} catch let error as NSError {
}
}
А:
let folderExists: Bool
var error: NSError?
do{
try folderExists = self.baseURL!.checkResourceIsReachableAndReturnError(&error){
} catch error as NSError {
}
}
Но ни подходы работы. Я также подумал, что быстрая реализация функций бросания ошибок со словом AndReturnError
будет сокращена до checkResourceIsReachable
, но это, похоже, не так. Я уверен, что делаю что-то принципиально неправильно здесь, и если у кого-то есть предложение, где искать, я бы это оценил.
Я только что проверил, а также определение еще без броска @available (IOS 4,0, *) общественного функ checkResourceIsReachableAndReturnError (ошибка: NSErrorPointer) -> Bool – peacer212
Насколько это очевидно, когда вы это указали. Спасибо! –
Я думаю, что в Swift 3 это теперь 'checkResourceIsReachable()' и просто возвращает 'Bool' для типа' URL'. –