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.

All labels observed (1)

Label Occurrences
objc_setEnumerationMutationHandler canonical 1

How this entity was disambiguated

Statements (43)

Predicate Object
instanceOf Objective-C runtime function
availability iOS
macOS
tvOS
watchOS
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
documentation Apple Developer Documentation for Objective-C Runtime Reference
effect sets global enumeration mutation handler
errorCondition mutated while being enumerated
introducedBy Apple
linked to: Apple Inc.
language Objective-C
linkage extern "C"
module libobjc
linked to: Objective-C runtime
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
fast enumeration
relatedFunction objc_enumerationMutation
relatedType NSArray
NSDictionary
NSSet
Objective-C collection classes
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

How these facts were elicited

Referenced by (1)

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

Objective-C runtime providesAPI objc_setEnumerationMutationHandler