Avatar
↓みたいな本来 preconditionFailure だけど万が一のプロダクションでのクラッシュを避けるために assertionFailure & return してたパターン(このパターン自体に賛否はあるけど)、 async になったら値を返さないといけないので preconditionFailure にするしかない?インスタンス生成が簡単なら適当な値を返して握りつぶすことはできなくはないけど。 func foo(completion: @escaping (Foo) -> Void) { guard checkState(self.state) else { assertionFailure() return } ... } (edited)