在抛出nil错误时的解包语法糖
使用这个语法糖,您可以在抛出nil错误时解包变量。这对于带有throw的闭包/函数很有用。
func unwrap<T: UnwrapProtocol>(object: T, _ error: ErrorType = default) throws -> T.Wrapped
let foo: Int = 3
let bar: Int? = 3
try unwrap(foo) // Compile error
try unwrap(bar) // OK
{ [weak self] in
let _self = try unwrap(self)
}
operation
.doOnNext { [weak self] i
let _self = try unwrap(self)
_self.value = "abc"
}
Unwrap可以通过CocoaPods获得。要安装它,只需将以下行添加到您的Podfile中
pod "Unwrap"
muukii,[email protected]
Unwrap在MIT许可证下可用。有关更多信息,请参阅LICENSE文件。