Avatar
ErrorプロトコルのlocalizedDescriptionを上書きたいのですが、うまくいきません。 以下では"hoge"と表示されてほしいのですが、"操作を完了できませんでした。"となってしまいます。 enum hogeError: Error { case hoge var localizedDescription: String { "hoge" } } func sayError(_ e: Error) { print(e.localizedDescription) } sayError(hogeError.hoge) sayErrorメソッド内でhogeErrorにキャストすれば実現できますが、 発生し得るエラーの種類が多いため、すべて列挙するのはあまり現実的でありません。 うまい解決方法はないでしょうか。