8
如何將HList的類型作爲字符串獲取以便我可以打印它。例如"Int :: Long :: String :: HNil"
如何以scala形式顯示HList的類型
val gen = Generic[?]
val typeString: String = ???
println("The type is " + typeString)
我知道它的字符串心不是非常有用的,通常你想從gen.Repr
如何將HList的類型作爲字符串獲取以便我可以打印它。例如"Int :: Long :: String :: HNil"
如何以scala形式顯示HList的類型
val gen = Generic[?]
val typeString: String = ???
println("The type is " + typeString)
我知道它的字符串心不是非常有用的,通常你想從gen.Repr
使用shapeless.Typeable
類型:
scala> import shapeless._
import shapeless._
scala> case class A(i: Int, s: String)
defined class A
scala> val gen = Generic[A]
gen: shapeless.Generic[A]{type Repr =
shapeless.::[Int,shapeless.::[String,shapeless.HNil]]} =
[email protected]
scala> println(Typeable[gen.Repr].describe)
Int :: String :: HNil
看看http://stackoverflow.com /問題/ 34016881/labelledgeneric到獲得類名 – Yaneeve