---
title: NSFastEnumeration
framework: foundation
role: symbol
role_heading: Protocol
path: foundation/nsfastenumeration
---

# NSFastEnumeration

A protocol that objects adopt to support fast enumeration.

## Declaration

```swift
protocol NSFastEnumeration
```

## Overview

Overview The abstract class NSEnumerator provides a convenience implementation that uses nextObject() to return items one at a time.

## Topics

### Enumeration

- [countByEnumerating(with:objects:count:)](foundation/nsfastenumeration/countbyenumerating(with:objects:count:).md)

### Constants

- [NSFastEnumerationState](foundation/nsfastenumerationstate.md)

## Relationships

### Conforming Types

- [FileManager.DirectoryEnumerator](foundation/filemanager/directoryenumerator.md)
- [NSArray](foundation/nsarray.md)
- [NSCountedSet](foundation/nscountedset.md)
- [NSDictionary](foundation/nsdictionary.md)
- [NSEnumerator](foundation/nsenumerator.md)
- [NSHashTable](foundation/nshashtable.md)
- [NSMapTable](foundation/nsmaptable.md)
- [NSMutableArray](foundation/nsmutablearray.md)
- [NSMutableDictionary](foundation/nsmutabledictionary.md)
- [NSMutableOrderedSet](foundation/nsmutableorderedset.md)
- [NSMutableSet](foundation/nsmutableset.md)
- [NSOrderedCollectionDifference](foundation/nsorderedcollectiondifference.md)
- [NSOrderedSet](foundation/nsorderedset.md)
- [NSPointerArray](foundation/nspointerarray.md)
- [NSSet](foundation/nsset.md)

## See Also

### Iteration

- [NSEnumerator](foundation/nsenumerator.md)
- [NSFastEnumerationIterator](foundation/nsfastenumerationiterator.md)
- [NSIndexSetIterator](foundation/nsindexsetiterator.md)
- [NSEnumerationOptions](foundation/nsenumerationoptions.md)
- [NSSortOptions](foundation/nssortoptions.md)
