---
title: CFSetRetainCallBack
framework: corefoundation
role: symbol
role_heading: Type Alias
path: corefoundation/cfsetretaincallback
---

# CFSetRetainCallBack

Prototype of a callback function used to retain a value being added to a set.

## Declaration

```swift
typealias CFSetRetainCallBack = (CFAllocator?, UnsafeRawPointer?) -> UnsafeRawPointer?
```

## Parameters

- `allocator`: The set’s allocator.
- `value`: The value being added to the set.

## Return Value

Return Value The value to store in the set, which is usually the value parameter passed to this callback, but may be a different   value if a different value should be stored in the collection.

## Discussion

Discussion This callback is passed to CFSetCreate(_:_:_:_:) in a CFSetCallBacks structure.

## See Also

### Callbacks

- [CFSetApplierFunction](corefoundation/cfsetapplierfunction.md)
- [CFSetCopyDescriptionCallBack](corefoundation/cfsetcopydescriptioncallback.md)
- [CFSetEqualCallBack](corefoundation/cfsetequalcallback.md)
- [CFSetHashCallBack](corefoundation/cfsethashcallback.md)
- [CFSetReleaseCallBack](corefoundation/cfsetreleasecallback.md)
