Есть ли способ специализировать generi c и проверить наличие необязательного в одной строке? Другими словами, иметь строки № 1 и № 2 I как одну строку кода?
func getTo<T>() -> T? {
// Real code here replaced by setting nil for clarity
nil
}
// Working version
// Line #1
let _r: [Any]? = getTo()
// Line #2
if let r = _r {
for e in r {
print ("\(e)")
}
}
// Not working single line version
// Single line
if let r: [Any]? = getTo() {
// Error here: error: for-in loop requires '[Any]?' to conform to 'Sequence'; did you mean to unwrap optional?
//for e in r {
// ^
for e in r {
print ("\(e)")
}
}
PS: Извините, исходный код был усечен.