我有一个类,它看起来有点像:如何在Swift 3.1中只调用一次函数?
final class Token {
..........
public enum Result {
case Success()
case Failure(Error)
}
private var successClosure : (() -> Void)?
private var failureClosure : ((Error) -> Void)?
public func completed(withResult result: Token.Result) {
switch result {
case .Success: successClosure?()
case .Failure(let error): failureClosure?(error)
}
}
..........
}
我想执行调用completed(withResult:)
只有一次的能力。
有没有方法将上面的completed(withResult:)
方法转换为与Swift 3.1兼容的方法?
这个“一次”的范围是什么?一次为应用程序的生命周期安装?每次执行应用程序一次?类实例的每个生命周期一次?还有别的吗? – rmaddy
每个场景都可以用一个简单的布尔测试来解决。 – the4kman
一次用于类实例的生命周期。 –