是否可以从 JSON 中获取底层的 hlist 表示circe形式?本质上将案例类转换为 HList
注意:我知道这可以直接使用 shapeless 实现,我想尝试circe's基于宏的解析器,因为我遇到了 shapeless 的性能问题。
为什么你认为有任何“来自”的“底层 hlist 表示circe”?
什么circe是将a解析String成JSON,引入类型类Decoder和Encoder
trait Encoder[A] extends Serializable { self =>
def apply(a: A): Json
//...
}
trait Decoder[A] extends Serializable { self =>
def apply(c: HCursor): Decoder.Result[A]
//...
}
并使用shapeless. _ 例如,这意味着如果我们有Decoder[H],Decoder[T]那么我们有Decoder[H :: T]。但是除了Jsoncirce之外,没有其他案例类的底层表示。
circe不会将 case 类转换为HList,shapeless会。