monocle-scala

    4熱度

    1回答

    單片眼鏡的自選具有以下訪問功能(Optional[C,A]): getOption: C => Option[A] set: A => C => C 這是在與(部分)非對稱透鏡數據的原始定義的賠率。我期望: getOption: C => Option[A] setOption: A => C => Option[C] 這是什麼原因?如何用Monocle獲得經典的部分鏡片?在對鏡頭進行

    0熱度

    2回答

    鑑於單片眼鏡項目中的JsonExample,我想創建一個鏡頭,其中set調用將替換鍵/值對中的值,或者創建鍵/值對如果它不存在。 然而,這似乎代表與任何一個索引(可組成型安全),或在,這並不類型安全 //for replacing: (jsObject composeOptional index("age") composePrism jsNumber).set(45) //for crea

    0熱度

    1回答

    我想弄清楚如何使用applyOptional。我有這個: import monocle.function.all.index import monocle.macros.{GenLens, Lenses} import monocle.std.map._ import monocle.syntax.ApplyOptionalOps._ import monocle.function.Ind

    2熱度

    1回答

    我正嘗試第一次使用單片眼鏡。 這裏的例子類: case class State(mem: Map[String, Int], pointer: Int) 而且目前的修改,使用標準的Scala,我想這樣做: def add1 = (s: State) => s.copy( mem = s.mem.updated("a", s.mem("a") + 1), pointer = s

    0熱度

    1回答

    我有我使用默認值創建嵌套case類的結構構建的路徑定義可選值使用Monocle時需要非默認的元素。 使用isos很容易。我可以組成指定的導航,然後使用set修改內部元件: object Beta { val alphaI: Iso[Beta, Alpha] = GenIso[Beta, Alpha] } object Alpha { val textI: Iso[Alpha

    0熱度

    1回答

    我使用單片眼鏡,scala中的透鏡庫來重構代碼的出現代碼day 12。 是否有可能改善這種代碼: type Register = String type Mem = Map[String, Int] @Lenses case class State(mem: Mem, pointer: Int) def processInstruction(instru

    0熱度

    1回答

    使用Monocle我可以定義一個鏡頭看沒有問題的情況下,類成員, val md5Lens = GenLens[Message](_.md5) 這可以用來比較的md5兩個物體之間的值並且在值不同時失敗並顯示包含字段名稱的錯誤消息。 有沒有一種方法可以從Lens中單獨生成一個用戶友好的字符串,用於識別鏡頭讀取的字段?我想避免明確提供字段名稱 val md5LensAndName = (GenLen