自分自身を参照するケースクラスに JsonFormats を提供するにはどうすればよいですか?
私はこのガイドラインに従っており、次のコードを書きました
case class Item(name: String, desc: Option[String], prices: Array[String], subitems: Option[List[Item]])
import spray.json._
import DefaultJsonProtocol._ // !!! IMPORTANT, else `convertTo` and `toJson` won't work
object MyJsonProtocol extends DefaultJsonProtocol {
implicit val menuItemFormat = jsonFormat(Item, "name", "desc", "prices", "subitems")
}
import MyJsonProtocol._
次のエラーメッセージが表示されますが、残念ながら意味がわかりません。
could not find implicit value for evidence parameter of type Hi.MyJsonProtocol.JF[Option[List[mypkg.Item]]]
implicit val menuItemFormat = jsonFormat(Item, "name", "desc", "prices", "subitems")
^
どうすれば修正できますか?