价值|@|不是 cats.data.Validated 的成员

value |@| is not a member of cats.data.Validated

当我使用 cats 0.9.0 时我可以轻松做到

import cats.data.Validated
import cats.data.Validated._
import cats.syntax.all._
import cats.implicits._
val x = Validated.valid[List[String], Int](10)
val y = Validated.valid[List[String], Int](20)
x |@| y 

这很好用。但是对于我的项目,我必须使用 Cats 0.7.2。

当我用 cats 0.7.2 尝试相同的代码时,同样的代码不起作用,我收到错误消息 value |@| is not a member of cats.data.Validated

这似乎可以编译:

import cats.data.Validated
import cats.data.Validated._
import cats.syntax.cartesian._
import cats.instances.list._ // <- this was the missing bit

val x  = Validated.valid[List[String], Int](5)
val y  = Validated.valid[List[String], Int](6)
x |@| y

我不确定 cats.implicits._ 是如何工作的,但似乎 import cats.instances.list._ 没有被导入。