Noe*_*l M 5 scalacheck shapeless circe
我有一个能够持久保存任何类型的方法,只要该类型有一个io.circe.Encoder[A]实例,如下所示:
def persist[A](a: A)(implicit ea: Encoder[A]): Boolean
现在在测试时,我可以在密封特性下创建任何旧案例类或一组案例类,创建一个ADT,并使用自动类型类派生来创建Encoder,并创建ScalaCheck Arbitrary实例,这使得测试非常好.
是否有可能以某种方式使用Shapeless来创建案例类的任意族(因此自动派生Encoder和Arbitrary实例),以便我可以确定我的persist方法适用于任何类型?
我不知道从哪里开始,更不用说为此描述一种类型了.
| 归档时间: |
|
| 查看次数: |
327 次 |
| 最近记录: |