Я думал об абстрактной условной логике в моем приложении. Предположим, у меня есть две функции в этом упрощенном примере:
func1(val1: Int, val2: Int, threshold: Int) -> Bool {
return (val1 == threshold && val2 == threshold)
}
func2(val: Int, thresholdHi: Int, thresholdLo: Int) {
return (val < thresholdHi && val > thresholdLo)
}
Моя идея состоит в том, чтобы создать функцию, которая выполняет условную проверку набора значений.
funcIdea(vals[Int], conditional: ???) -> Bool {
for val in vals {
if !conditional(val) { return false; }
}
return true
}
func1(...){
return funcIdea([val1, val2], ???)
}
Я думаю, что это возможно либо с помощью замыкания, либо с помощью функции.