0

我尝试让 Seq[String] 包含案例类的字段名称和另一个 Seq[String] 包含案例类的值。以一般的方式。我想我必须使用 Poly1 函数映射值才能具有任意类型 => 字符串。

但现在,我无法从 LabelledGenerics 中提取键和值。

def apply[T,R <: HList](value : T)(implicit gen: LabelledGeneric.Aux[T, R],
                      keys : Keys[R],
                      valuesR : Values[R]
                      ) {
       val hl = gen.to(value) 
       val keys = hl.keys ...
       val values = hl.values.map ...
}

我不确定我是否必须要求隐含的键和值,或者是否可以从 LabelledGeneric 中获得。

我试图将以下 Poly 映射到键上以获得字符串的 hlist。但似乎钥匙不是见证人

object PolyWitnesToString extends Poly1 {
  implicit def witnessCase = at[Witness]{ w => w.toString}
}

我现在有点迷路了。

4

0 回答 0