objc_setEnumerationMutationHandler

E782293

objc_setEnumerationMutationHandler is an Objective-C runtime function that lets you install a custom handler to be called when a collection is mutated during fast enumeration.

Jump to: Statements Referenced by

Statements (43)

Predicate Object
instanceOf Objective-C runtime function
availability iOS NERFINISHED
macOS NERFINISHED
tvOS NERFINISHED
watchOS NERFINISHED
callingConvention C
canBeUsedTo abort process on mutation for debugging
log mutations instead of throwing exception
set breakpoint on mutation events
category debugging API
runtime configuration API
declaredInHeader objc/runtime.h
defaultBehavior without custom handler, runtime raises mutation exception
definedIn Objective-C runtime NERFINISHED
documentation Apple Developer Documentation for Objective-C Runtime Reference NERFINISHED
effect sets global enumeration mutation handler
errorCondition mutated while being enumerated
introducedBy Apple NERFINISHED
language Objective-C NERFINISHED
linkage extern "C"
module libobjc NERFINISHED
namespace global C namespace
parameter void (*handler)(id, SEL, id)
parameterRole mutation handler callback
parameterType function pointer
purpose install custom handler for collection mutation during fast enumeration
relatedConcept NSFastEnumeration NERFINISHED
fast enumeration
relatedFunction objc_enumerationMutation
relatedType NSArray NERFINISHED
NSDictionary NERFINISHED
NSSet NERFINISHED
Objective-C collection classes NERFINISHED
returnType void
scope process-wide
sideEffect changes behavior when a collection is mutated during fast enumeration
threadSafety global handler affects all threads in process
triggerCondition mutation of a collection being fast-enumerated
usagePattern typically called early in application startup
usedFor custom handling of mutation during NSFastEnumeration
debugging fast enumeration mutation errors
detecting mutations of collections during fast enumeration
warning custom handler must be reentrant and signal-safe if used in production

Referenced by (1)

Full triples — surface form annotated when it differs from this entity's canonical label.

Objective-C runtime providesAPI objc_setEnumerationMutationHandler