<!--
{
  "availability" : [
    "iOS: -",
    "iPadOS: -",
    "macCatalyst: -"
  ],
  "documentType" : "symbol",
  "framework" : "AssetsLibrary",
  "identifier" : "/documentation/AssetsLibrary/ALAssetsGroupEnumerationResultsBlock",
  "metadataVersion" : "0.1.0",
  "role" : "Type Alias",
  "symbol" : {
    "kind" : "Type Alias",
    "modules" : [
      "Assets Library"
    ],
    "preciseIdentifier" : "c:@T@ALAssetsGroupEnumerationResultsBlock"
  },
  "title" : "ALAssetsGroupEnumerationResultsBlock"
}
-->

# ALAssetsGroupEnumerationResultsBlock

Signature for the block executed during enumeration of assets.

```
typedef void (^)(ALAsset *, unsigned long, _Bool *) ALAssetsGroupEnumerationResultsBlock;
```

## Discussion

The block takes the following arguments:

- result: An asset that matches the filter set by the caller.
- index: The index of the asset in the range being returned.

If no asset is found, index is set to `NSNotFound`.

- stop: A pointer to a Boolean value that indicates whether the enumeration should stop. Set the referenced value to <doc://com.apple.documentation/documentation/Swift/true> to stop the enumeration.

The value is set to <doc://com.apple.documentation/documentation/Swift/true> if no asset is found.

If the application is not given access to the data, `result` is `nil`, `index` is `NSNotFound`, and `stop` points to <doc://com.apple.documentation/documentation/Swift/true>.

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)