#include <objc/objc-exception.h>
objc/objc-exception.h
typedefobjc_exception_preprocessor
typedef id _Nonnull (*objc_exception_preprocessor)(id _Nonnull exception)
typedefobjc_exception_matcher
typedef int (*)(Class _Nonnull, id _Nonnull) objc_exception_matcher;
typedefobjc_uncaught_exception_handler
typedef void (*objc_uncaught_exception_handler)(id _Null_unspecified /* _Nonnull */ exception)
typedefobjc_exception_handler
typedef void (*)(id _Nullable, void * _Nullable) objc_exception_handler;
functionobjc_exception_throw
OBJC_AVAILABLE(10.5, 2.0, 9.0, 1.0, 2.0) OBJC_EXPORT OBJC_NORETURN void objc_exception_throw(id _Nonnull exception)
Throw a runtime exception. This function is inserted by the compiler
where \c @throw would otherwise be.
@param exception The exception to be thrown.
functionobjc_exception_rethrow
OBJC_AVAILABLE(10.5, 2.0, 9.0, 1.0, 2.0) OBJC_EXPORT OBJC_NORETURN void objc_exception_rethrow(void)
functionobjc_begin_catch
OBJC_AVAILABLE(10.5, 2.0, 9.0, 1.0, 2.0) OBJC_EXPORT id _Nonnull objc_begin_catch(void * _Nonnull exc_buf)
functionobjc_end_catch
OBJC_AVAILABLE(10.5, 2.0, 9.0, 1.0, 2.0) OBJC_EXPORT void objc_end_catch(void)
functionobjc_terminate
OBJC_AVAILABLE(10.8, 6.0, 9.0, 1.0, 2.0) OBJC_EXPORT OBJC_NORETURN void objc_terminate(void)
functionobjc_setExceptionPreprocessor
OBJC_AVAILABLE(10.5, 2.0, 9.0, 1.0, 2.0) OBJC_EXPORT objc_exception_preprocessor _Nonnull objc_setExceptionPreprocessor( objc_exception_preprocessor _Nonnull fn )
functionobjc_setExceptionMatcher
OBJC_AVAILABLE(10.5, 2.0, 9.0, 1.0, 2.0) OBJC_EXPORT objc_exception_matcher _Nonnull objc_setExceptionMatcher( objc_exception_matcher _Nonnull fn )
functionobjc_setUncaughtExceptionHandler
OBJC_AVAILABLE(10.5, 2.0, 9.0, 1.0, 2.0) OBJC_EXPORT objc_uncaught_exception_handler _Nonnull objc_setUncaughtExceptionHandler( objc_uncaught_exception_handler _Nonnull fn )
functionobjc_addExceptionHandler
OBJC_OSX_AVAILABLE_OTHERS_UNAVAILABLE(10.5) OBJC_EXPORT uintptr_t objc_addExceptionHandler( objc_exception_handler _Nonnull fn, void * _Nullable context )
Not for iOS.
functionobjc_removeExceptionHandler
OBJC_OSX_AVAILABLE_OTHERS_UNAVAILABLE(10.5) OBJC_EXPORT void objc_removeExceptionHandler(uintptr_t token)