NSAssertionHandler
NSAssertionHandler
объекты автоматически создаются для обработки ложных утверждений. Макросы утверждения, такой как NSAssert
и NSCAssert
, если условие оценивает ко лжи, передача макросов строка к, используются для оценки условия, и NSAssertionHandler
объект, описывающий отказ. Каждый поток имеет свое собственное NSAssertionHandler
объект. Когда вызвано, обработчик утверждения распечатывает сообщение об ошибке, включающее метод и класс (или функция) содержащий утверждение и повышающее NSInternalInconsistencyException
.
Вы создаете утверждения только с помощью макросов утверждения — редко необходимо вызывать NSAssertionHandler
методы непосредственно. Макросы для использования в методах и функциях отправляют handleFailureInMethod:object:file:lineNumber:description:
и handleFailureInFunction:file:lineNumber:description:
сообщения соответственно к текущему обработчику утверждения. Обработчик утверждения для текущего потока получен с помощью currentHandler
метод класса. Посмотрите NSAssertionHandlerKey
если необходимо настроить поведение NSAssertionHandler
.
Оператор импорта
Swift
import Foundation
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.0 и позже.
-
Возвраты
NSAssertionHandler
объект связался с текущим потоком.Объявление
Swift
class func currentHandler() -> NSAssertionHandler
Objective C
+ (NSAssertionHandler *)currentHandler
Возвращаемое значение
NSAssertionHandler
объект связался с текущим потоком.Обсуждение
Если никакой обработчик утверждения не связан с текущим потоком, этот метод создает один и присваивает его потоку.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
handleFailureInFunction:file:lineNumber:description: - handleFailureInFunction:file:lineNumber:description:
Журналы (использование
NSLog
) сообщение об ошибке, включающее имя функции, имя файла и номер строки.Объявление
Параметры
functionName
Переставшая работать функция.
object
Переставший работать объект.
fileName
Имя исходного файла.
line
Строка, в которой произошел отказ.
format,...
Строка формата, сопровождаемая списком разделенных запятой значений параметров для замены в строку формата. Посмотрите Строковые Объекты Форматирования для получения дополнительной информации.
Обсуждение
Повышения
NSInternalInconsistencyException
.Оператор импорта
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.0 и позже.
-
handleFailureInMethod:object:file:lineNumber:description: - handleFailureInMethod:object:file:lineNumber:description:
Журналы (использование
NSLog
) сообщение об ошибке, включающее имя метода, переставшего работать, имя класса объекта, имя исходного файла и номер строки.Объявление
Параметры
selector
Селектор для переставшего работать метода
object
Переставший работать объект.
fileName
Имя исходного файла.
line
Строка, в которой произошел отказ.
format,...
Строка формата, сопровождаемая списком разделенных запятой значений параметров для замены в строку формата. Посмотрите Строковые Объекты Форматирования для получения дополнительной информации.
Обсуждение
Повышения
NSInternalInconsistencyException
.Оператор импорта
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.0 и позже.
-
Эта константа относится к ключу в словаре потока объекта-обработчика утверждения на поток
Объявление
Objective C
NSString * const NSAssertionHandlerKey;
Константы
-
NSAssertionHandlerKey
NSAssertionHandlerKey
Ключ с соответствующим значением в словаре потока.
Если необходимо настроить поведение
NSAssertionHandler
, создайте подкласс, переопределивhandleFailureInMethod:object:file:lineNumber:description:
иhandleFailureInFunction:file:lineNumber:description:
, и установите свой экземпляр в словарь атрибутов текущего потока с этим ключом.
-