Ich habe diesen Standard Shapeless
Code:Shapeless Bilanz von Generics
case class KeyValue(key: String, value: Int)
val kv = KeyValue("key", 1)
def processCaseClass(p: KeyValue) = {
val gen = LabelledGeneric[KeyValue]
gen.to(p)
}
Aber statt die Namen der Fall-Klasse, würde Ich mag Generika verwenden, aber es so umschreiben, nicht Arbeit:
def processCaseClass[KV <: Product, L <: HList](p: KV) = {
val gen = LabelledGeneric.Aux[KV, L]
gen.to(p)
}
Wenn ich gen
auf einen impliziten Parameter ändern funktioniert es OK.
Was ist mit dem obigen Code falsch?
Sie für die Erklärung danken. Jetzt macht es Sinn. – jamborta