labelled-generic

    3熱度

    3回答

    我知道用無形的,我可以做這樣的事情: import shapeless._, syntax.singleton._, record._ case class Foo(x: Int, y: String) case class RichFoo(x: Int, y: String, z: Double) def makeRich(foo: Foo): RichFoo

    4熱度

    1回答

    有人知道如何對齊兩個記錄時,他們有相同的字段名稱,但不是相同的值有一個值包裝列另一個包裹在選項,我需要對齊它們作爲順序是不同 import shapeless._ import shapeless.labelled.{FieldType, field} import shapeless.ops.hlist.{Align, ToTraversable, ZipWith} object Sha

    8熱度

    1回答

    我想參數化需要一個泛型類型A對於其中LabelledGeneric可以檢索工作的方法的類型參數。下面是天真的做法 case class Foo(bar: String, baz: Boolean) def params[A](a: A) = { val lbl = LabelledGeneric[A] val keys = Keys[lbl.Repr].apply

    20熱度

    2回答

    我想在做類似的東西Safely copying fields between case classes of different types但與重新排序場轉的情況下,類到另一種領域,即 case class A(foo: Int, bar: Int) case class B(bar: Int, foo: Int) 我想有東西轉A(3, 4)成B(4, 3) - 無形的LabelledGen

    8熱度

    1回答

    假設我想穿越案例類通用表示所描述here 我定義了一些類型類描述字段: trait Described[X] extends (X => String) object Described{ def apply[X](x: X)(implicit desc: Described[X]) = desc(x) } 定義了一些實例: implicit object DoubleDescr