タグ

2019年7月1日のブックマーク (1件)

  • ZIOのエラー・モデルとエラー処理 - Qiita

    ZIOは実行の失敗(=エラー)をCause[E]という代数的データ型で表現します。Cause[E]の型パラメータEはZIO[R, E, A]の2番目の型パラメータEと同じ型でアプリケーション・ロジックに関する失敗を表現する型です。Cause[E]は概念的にはアプリケーション内の失敗Eとアプリケーション外の失敗Throwableの直和型です。 例えばユーザ管理を行っているサービスがあります。指定したユーザuserIdのアイコンを更新するロジックupdateUserIconは以下のように記述できます。指定されたユーザが見つからずアイコンの更新が失敗する可能性をロジックのシグネチャでZIO[R, E, A]のEにUserNotFound.type型を指定して表現します。対応するCause[E]はCause[UserNotFound.type]になります。”ユーザが見つからない”といったアプリケー

    ZIOのエラー・モデルとエラー処理 - Qiita