インスタンスメソッド


mapError(_:)


与えられた変換を使用して失敗の値をマッピングし、新しい結果を返します。


iOS 8.0+ iPadOS 8.0+ Mac Catalyst 13.0+ macOS 10.10+

tvOS 9.0+ visionOS 1.0+ watchOS 2.0+

consuming func mapError<NewFailure>(_ transform: (Failure) -> NewFailure) -> 
Result<Success, NewFailure> where NewFailure : Error

FailureError に準拠している場合に使用できます。





パラメータ


transform

このインスタンスの失敗の値を受け取るクロージャ。



戻り値


このインスタンスが失敗を表す場合、transform を評価した結果を新しい失敗の値として持つ Result のインスタンス。



議論


このメソッドは、Result インスタンスの値が失敗を表す場合にその値を変換する必要がある場合に使用します。以下の例では、結果のエラーの値をカスタムの Error 型に包み込んで変換します。


struct DatedError: Error {
    var error: Error
    var date: Date

    init(_ error: Error) {
        self.error = error
        self.date = Date()
    }
}

let result: Result<Int, Error> = // ...
// result == .failure(<error value>)
let resultWithDatedError = result.mapError { DatedError($0) }
// result == .failure(DatedError(error: <error value>, date: <date>))




以下も見よ


結果の変換


func map<NewSuccess>((Success) -> NewSuccess) -> Result<NewSuccess, Failure>

与えられた変換を使用して成功の値をマッピングし、新しい結果を返します。


func flatMap<NewSuccess>((Success) -> Result<NewSuccess, Failure>) -> Result<NewSuccess, Failure>

与えられた変換を使用して成功の値をマッピングし、生成された結果を開封して、新しい結果を返します。


func flatMapError<NewFailure>((Failure) -> Result<Success, NewFailure>) -> Result<Success, NewFailure>

与えられた変換を使用して失敗の値をマッピングし、生成された結果を開封して、新しい結果を返します。














トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ