1

µPickle文档说通用案例类可以序列化:

开箱即用,uPickle 支持写入和读取以下类型:

  • 独立的case classes 和case objects,以及它们的通用等价物,

但是没有给出示例,到目前为止我无法找到正确的方法。我的尝试是:

import upickle.default._

object Container {
  implicit def rw[T]: ReadWriter[Container[T]] = macroRW
}
case class Container[T](value: T)

object Main extends App {
  val c = new Container(0)

  val cString = write(c)
  println("c " + cString)
}

这失败并出现错误:

错误:(7, 50) 找不到参数 e 的隐式值:

upickle.default.Reader[T]

隐式 def rw[T]: ReadWriter[Container[T]] = macroRW

应该如何使用 µPickle 序列化泛型案例类?

4

1 回答 1

3

不要忘记使用上下文绑定

implicit def rw[T: ReadWriter]: ReadWriter[Container[T]] = macroRW
于 2019-05-06T09:32:59.553 回答