SigmaClient.getHoldout
func getHoldout(name: String, onSuccess: SigmaSuccessCallback<Bool>?, onError: SigmaErrorCallback?)
func getHoldout(name: String) async throws -> Bool
Мето д проверяет, попал ли пользователь в холдаут с заданным идентификатором.
При попадании пользователя в холдаут метод вернет true иначе false.
Параметры
| Name | Type | Required | Default | Description | 
| onSuccess | SigmaSuccessCallback Bool ? | Да | Только для callback версии метода. Closure со значением типа Bool, попал ли пользователь в holdout-эксперимент с заданным идентификатором или нет. | |
| onError | SigmaErrorCallback? | Да | Только для callback версии метода. Closure, содержащая в себе ошибку при запросе, попал ли пользователь в holdout-эксперимент с заданным идентификатором или нет. | 
Возвращаемое значение
| Type | Description | 
| Bool | Только для async-await версии метода. Значение типа Bool, попал ли пользователь в holdout-эксперимент с заданным идентификатором или нет. | 
Ошибки
| Error | Description | 
| SigmaError.requestConfigFailed | Ошибка запроса конфигурационного файла. Содержит в себе объект SigmaNetworkError с более детальной информацией об ошибке | 
| SigmaError.requestLocationFailed | Ошибка запроса геолокации. Содержит в себе объект SigmaNetworkError с более детальной информацией об ошибке | 
| SigmaError.holdoutNotFound | Ошибка поиска holdout-эксперимента с заданным идентификатором. | 
Использование
import SigmaSDK
guard let client = Sigma.getClient() else { return }
// Callback версия
client.getHoldout(
    name: "my_first_holdout",
    onSuccess: { isInHoldout in
        // Обработка информации, попал ли пользователь в holdout-эксперимент
    },
    onError: { error in
        // Обработка ошибки
    }
)
// Async-await версия
do {
    let holdout = try await client.getHoldout(name: "my_first_holdout")
    // Обработка информации, попал ли пользователь в holdout-эксперимент
} catch let error {
    // Обработка ошибки
}