代码之家  ›  专栏  ›  技术社区  ›  Kevin Meredith

召唤编码器[one和[NonEmptyList,Int]]?

  •  2
  • Kevin Meredith  · 技术社区  · 6 年前

    鉴于:

    @ import $ivy.`io.circe::circe-core:0.9.3` 
    import $ivy.$                           
    
    @ import $ivy.`io.circe::circe-generic:0.9.3` 
    import $ivy.$                              
    
    @ import cats._, cats.data._, io.circe._, io.circe.Encoder._, io.circe.Decoder._ 
    import cats._, cats.data._, io.circe._, io.circe.Encoder._, io.circe.Decoder._
    
    @ val x: OneAnd[NonEmptyList, Int] = OneAnd(1, NonEmptyList(2, Nil)) 
    x: OneAnd[NonEmptyList, Int] = OneAnd(1, NonEmptyList(2, List()))
    
    @ import io.circe.syntax._ 
    import io.circe.syntax._
    
    @ x.asJson 
    cmd5.sc:1: could not find implicit value for parameter encoder: io.circe.Encoder[cats.data.OneAnd[cats.data.NonEmptyList,Int]]
    val res5 = x.asJson
                 ^
    Compilation Failed
    

    也许我错过了一个 import 为了使用 https://github.com/circe/circe/blob/58107ee7c82769f56e5cd932c21493dfe239b6d6/modules/core/shared/src/main/scala/io/circe/Encoder.scala#L343-L350 Encoder#encodeOneAnd ?

    谢谢

    1 回复  |  直到 6 年前
        1
  •  1
  •   étienne    6 年前

    添加导入

    import io.circe.generic.auto._
    

    帮我解决了。希望这有帮助。