With Argonaut, how can I convert a list of Map(String->Any) to json?

1k Views Asked by At
import scalaz._, Scalaz._
import argonaut._, Argonaut._

object Minimal {
  val list = List(Map("id" -> 1), Map("name" -> "Mr. Name"))
  println(list.asJson)
}

gives me

Error:(8, 16) diverging implicit expansion for type argonaut.EncodeJson[A0]
starting with method IMapEncodeJson in trait EncodeJsons
  println(list.asJson)
               ^
Error:(8, 16) diverging implicit expansion for type argonaut.EncodeJson[V]
starting with method IMapEncodeJson in trait EncodeJsons
  println(list.asJson)
               ^
Error:(8, 16) not enough arguments for method asJson: (implicit e: argonaut.EncodeJson[List[scala.collection.immutable.Map[String,Any]]])argonaut.Json.
Unspecified value parameter e.
  println(list.asJson)
           ^

However, if I redefine list to be

  val list = List(Map("id" -> "1"), Map("name" -> "Mr. Name"))

it works.

0

There are 0 best solutions below