Ну разве это не что-то.Это верно в сообщении об ошибке.
Binary operator '!=' cannot be synthesized for enums with associated values
Быстрый ответ:
arr = arr.filter {
switch $0 {
case .foo: return true
default: return false
}
}
Более компактный ответ:
arr = arr.filter { if case .foo = $0 { return true } else { return false } }
Более понятный ответ:
Если в test
есть только несколько значений, переместите логику в перечисление.
extension test {
var isFoo: Bool {
switch self {
case .foo: return true
default: return false
}
}
var isBar: Bool {
switch self {
case .bar: return true
default: return false
}
}
}
arr = arr.filter { $0.isFoo }