NSFastEnumeration

E820424

NSFastEnumeration is an Objective-C protocol that enables efficient, fast enumeration of collections using the for-in syntax.

All labels observed (1)

Label Occurrences
NSFastEnumeration canonical 4

How this entity was disambiguated

Statements (50)

Predicate Object
instanceOf Objective-C protocol
availableOn iOS
macOS
tvOS
watchOS
belongsToFramework Foundation framework
category collection enumeration
conformanceRequiredFor use in fast enumeration for-in loops
declaredInHeader Foundation headers
definedInLanguage Objective-C
designGoal improve performance of collection iteration
simplify enumeration syntax
enablesPattern for (id obj in collection) syntax
errorCondition mutation during enumeration may raise exception
hasRequiredMethod countByEnumeratingWithState:objects:count:
hasStruct NSFastEnumerationState
introducedFor efficient iteration over collections
iterationOrder defined by the conforming collection
languageFeatureType runtime protocol
memoryManagementModel ARC-compatible
methodReturnType NSUInteger for countByEnumeratingWithState:objects:count:
NSFastEnumerationStateField id __unsafe_unretained *itemsPtr
unsigned long *mutationsPtr
unsigned long extra[5]
unsigned long state
primaryPurpose enable fast enumeration of collections
relatedTo NSEnumerator
supportsFeature batched retrieval of items
fast iteration compared to NSEnumerator
mutation detection during enumeration
supportsSyntax for-in loop syntax
supportsType any object conforming to NSFastEnumeration
usedBy NSArray
NSCountedSet
NSDictionary
NSHashTable
NSIndexSet
NSMapTable
NSMutableArray
NSMutableDictionary
NSMutableSet
NSOrderedSet
NSPointerArray
NSSet
usedIn Cocoa
Cocoa Touch
usedWith Objective-C for-in loop
usesParameter NSFastEnumerationState * for countByEnumeratingWithState:objects:count:
NSUInteger len for countByEnumeratingWithState:objects:count:
id __unsafe_unretained[] buffer for countByEnumeratingWithState:objects:count:

How these facts were elicited

Referenced by (4)

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

NSSet conformsToProtocol NSFastEnumeration
NSArray conformsTo NSFastEnumeration
NSMutableSet conformsTo NSFastEnumeration