在Swift2.2中,我有一个扩展
它允许编写如下代码:
有时候,我并不在乎结果:
在Swift2.2中,它非常好用。但是在新的XCode8 Beta上启动并转换为Swift3时,我得到了任何执行第二个类型的警告。这似乎就像有一个隐含的@warn_unused_result。这只是早期beta版本的错误吗?还是我在Swift3中不能再做某些事情了?或者是我需要在Swift3中进行新的修复?
Optional
的代码如下:extension Optional {
func ifNotNil<T>(_ closure:(Wrapped) -> T) -> T? {
switch self {
case .some (let wrapped):
return closure(wrapped)
case .none:
return nil
}
}
}
它允许编写如下代码:
anImageView.image = self.something.ifNotNil { self.getImageFor($0) }
有时候,我并不在乎结果:
myBSON["key"].string.ifNotNil {
print($0}
}
在Swift2.2中,它非常好用。但是在新的XCode8 Beta上启动并转换为Swift3时,我得到了任何执行第二个类型的警告。这似乎就像有一个隐含的@warn_unused_result。这只是早期beta版本的错误吗?还是我在Swift3中不能再做某些事情了?或者是我需要在Swift3中进行新的修复?