Дополнительные (логические) предложения отделяются от необязательного связывания запятой :
if let range = self.range(of: "@"), condition1, condition2 { ... }
Тем не менее, присвоение среза _
ничего не проверяет, оно должно выглядеть примерно так:
var isEmailFormat: Bool {
if let range = self.range(of: "@"),
range.lowerBound > startIndex,
range.upperBound < endIndex {
return true
} else {
return false
}
}
В качестве альтернативы:
var isEmailFormat: Bool {
if let range = self.range(of: "@") {
return range.lowerBound > startIndex && range.upperBound < endIndex
} else {
return false
}
}