fatalError
を使うのが適切かと、 Swift が fatalError
を含む Universal Error をハンドリングする方法を提供していないことは切り分けて考えた方がいいと思います。fatalError
だけ代わりの方法で対処できたとしても、その他の Universal Error (メモリが足りないとかスタックオーバーフローとか)は起こりうるので、結局それらが発生したっ場合のログは送れないですし。Swift could support a secondary, untyped propagation mechanism using "zero-cost" exceptions. ... However, this work is outside of the scope of Swift 2.0.
https://github.com/apple/swift/blob/master/docs/ErrorHandlingRationale.rst#universal-errors とあり、将来的にサポートされる可能性もあるかと。do
- try
- catch
以外のメカニズムがいいと思いますが。