---
title: Protocol Implementations
framework: appkit
role: collectionGroup
role_heading: API Collection
path: appkit/protocol-implementations
---

# Protocol Implementations

Access the diffable data source’s implementations of protocol methods.

## Overview

Overview The diffable data source type conforms to several protocols, including NSCollectionViewDataSource and Hashable. This page lists the diffable data source type’s implementations of those protocol requirements.

## Topics

### Getting Item and Section Metrics

- [collectionView(_:numberOfItemsInSection:)](appkit/nscollectionviewdatasource/collectionview(_:numberofitemsinsection:).md)
- [numberOfSections(in:)](appkit/nscollectionviewdatasource/numberofsections(in:).md)

### Getting Views for Items

- [collectionView(_:itemForRepresentedObjectAt:)](appkit/nscollectionviewdatasource/collectionview(_:itemforrepresentedobjectat:).md)
- [collectionView(_:viewForSupplementaryElementOfKind:at:)](appkit/nscollectionviewdatasource/collectionview(_:viewforsupplementaryelementofkind:at:).md)

### Debugging a Diffable Data Source

- [description()](appkit/nscollectionviewdiffabledatasource-axww/description().md)
