<!--
{
  "availability" : [
    "iOS: 2.0.0 -",
    "iPadOS: 2.0.0 -",
    "macCatalyst: 13.0.0 -",
    "macOS: 10.0.0 -",
    "tvOS: 9.0.0 -",
    "visionOS: 1.0.0 -",
    "watchOS: 2.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "Foundation",
  "identifier" : "/documentation/Foundation/NSOrderedSet/indexes(ofObjectsPassingTest:)",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Method",
  "symbol" : {
    "kind" : "Instance Method",
    "modules" : [
      "Foundation"
    ],
    "preciseIdentifier" : "c:objc(cs)NSOrderedSet(im)indexesOfObjectsPassingTest:"
  },
  "title" : "indexes(ofObjectsPassingTest:)"
}
-->

# indexes(ofObjectsPassingTest:)

Returns the index of the object in the ordered set that passes a test in a given block.

```
func indexes(ofObjectsPassingTest predicate: (Any, Int, UnsafeMutablePointer<ObjCBool>) -> Bool) -> IndexSet
```

## Parameters

`predicate`

The block to apply to elements in the ordered set.

    The block takes three arguments:

- obj: The element in the ordered set.
- Term: The index of the element in the ordered set.
- stop: A reference to a Boolean value. The block can set the value to <doc://com.apple.documentation/documentation/Swift/true> to stop further processing of the set. The `stop` argument is an out-only argument. You should only ever set this value to <doc://com.apple.documentation/documentation/Swift/true> within the block.

## Return Value

The index of the corresponding value in the ordered set that passes the test specified by predicate. If no objects in the ordered set pass the test, returns NSNotFound..

## Discussion

If the block parameter is `nil`, this method raises an exception.

---

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)