【问题标题】:Cats EitherT convert to Future[Result]Cats EitherT 转换为 Future[结果]
【发布时间】:2021-12-28 12:42:24
【问题描述】:

我的结果如下:

EitherT[Future, IllegalStateException, Result]

如何转换为 Future[Result] ? 让 Future 因这个 IllegalStateException 而失败? 我知道我可以像 resultT.value 一样获得 Future[Either[Exception, Res]] 并转换它,但也许有更简单的方法。

【问题讨论】:

    标签: scala scala-cats


    【解决方案1】:

    正如我常说的,Scaladoc 是你的朋友。

    def rethrowT(implicit F: MonadError[F, _ >: A]): F[B]

    给定MonadError[F, E :> A]Either[F, A, B] 转换为F[B] 如果值为B,则F[B] 成功如果值为A,则F[B] 失败并显示E

    您需要做的就是:

    resultT.rethrowT
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-06-15
      • 2019-04-09
      • 2023-03-25
      • 1970-01-01
      • 2022-01-22
      • 1970-01-01
      • 2018-06-29
      相关资源
      最近更新 更多