Avatar
norio_nomura 2/13/2018 2:32 AM
📝 メモ: Xcode Source Editor Extensionでエラーメッセージを提供するには、CustomNSErrorに準拠しNSLocalizedDescriptionKeyにメッセージを持ったerrorUserInfoを返すErrorcompletionHandler()に渡す。 https://github.com/norio-nomura/SwiftLintForXcode/pull/10
2:37 AM
LocalizedErrorに準拠してerrorDescriptionでメッセージを返す方法も、NSErrorへキャストした時にlocalizedDescriptionを提供するけど、Swiftでしか動かずXcodeは使ってくれない。 import Foundation struct MyError: Error, CustomNSError { var errorUserInfo: [String : Any] { return [NSLocalizedDescriptionKey: "NSLocalizedDescriptionKey"] } } let myError = MyError() as NSError print(myError.localizedDescription) // "NSLocalizedDescriptionKey\n" struct MyError2: LocalizedError { var errorDescription: String? { return "errorDescription" } } let myError2 = MyError2() as NSError print(myError2.localizedDescription) // "errorDescription\n" (Swiftのみ) (edited)