either

    4熱度

    1回答

    我有一個Either String (Either String Int)類型的對象。我想將其摺疊爲類型爲Either String Int的對象。 在PureScript中是否提供了此功能?

    1熱度

    1回答

    假設我有兩種類型IntResult和StringResult: import cats._ import cats.data._ import cats.implicits._ scala> case class MyError(msg: String) defined class MyError scala> type Result[A] = Either[NonEmptyList

    1熱度

    1回答

    假設我們有EitherT[F, String, A]。 斯卡拉茲的withFilter函數使用String的Monoid的零來填充Left,如果過濾器失敗。 因此,沒有有意義的錯誤消息。 我怎麼能實現一些形式的左「不積極」的形式。 val a: Either[Future, String, Int] = -1.point[EitherT[Future, String, ?]] val foo

    1熱度

    2回答

    在此代碼: data LatLngPoint = LatLngPoint { latitude :: Double , longitude :: Double , height :: Double } data LatLng = LatLng { point :: LatLngPoint , datum

    2熱度

    1回答

    如何在add成功返回? 目前我還有Unit,有沒有更習慣用法? 我的意思是,Either[String, Unit]感覺不對,因爲Right是爲了返回一個值,因爲它有一個類型參數。 該方法可能失敗或成功完成,但是當它成功完成後沒有任何返回,因此我只返回Right()。我想知道描述這種情況的慣用方法是什麼? 什麼是一種很好的類型來表示這種情況? import scala.collection.imm

    4熱度

    1回答

    爲什麼這項工作: val somePair: Option[(String,String)] = Some(("John", "Doe")) (for { pair <- somePair.toRight("Hello unknown!").right } yield s"Hello ${pair._1} ${pair._2}!").merge 但這並不: val somePai

    11熱度

    3回答

    我在玩Maybe和Monad類型(Chaining,根據返回值應用條件函數,還返回鏈接函數失敗等錯誤消息)。所以它對我來說似乎就像我們可以通過使用任一monad實現同樣的和更多的事情。所以我的問題是這些之間的實際或概念差異?

    0熱度

    1回答

    簡單的方法假設你有以下Either[A1,B2]實例,其中A1和B2是map版匹配Either[A,B],其中A和B有一個常見的亞型S。有沒有辦法輕鬆縮小類型A和B至S?

    0熱度

    1回答

    我想創建的Either實例中使用REPL例如asRight: import cats._ import cats.data._ import cats.implicits._ scala> val x = "xxx".asRight <console>:20: error: value asRight is not a member of String val x = "xx

    0熱度

    2回答

    我試圖從我的函數中使用返回類型來取回對象或字符串。在它是一個對象的情況下,我想從這個對象開始調用方法。如果是字符串,我想在其他地方調用其他函數。我一直掛斷,因爲返回的東西不是我返回的對象,它是「左」類型的,我似乎無法將該對象從「左」類型中移回到「播放器」類型中我想要。這包含在擴展可變隊列的對象中。這裏是我的功能,查找基於關閉這是我ActionQueue對象的關鍵在一個Map Player對象: d