【发布时间】:2013-04-30 15:43:17
【问题描述】:
我正在尝试生成如下任意列表:
scala> def validPairs[T] = Arbitrary.arbitrary[List[(T, Option[T])]] suchThat(!_.isEmpty)
<console>:8: error: could not find implicit value for parameter a: org.scalacheck.Arbitrary[List[(T, Option[T])]]
def validPairs[T] = Arbitrary.arbitrary[List[(T, Option[T])]] suchThat(!_.isEmpty)
知道我在这里做错了什么吗?使用具体类型无需我定义隐式参数。
scala> def validPairsString = Arbitrary.arbitrary[List[(String, Option[String])]] suchThat(!_.isEmpty)
validPairsString: org.scalacheck.Gen[List[(String, Option[String])]]
这是使用 scala 2.9.2 和 scalacheck 1.10.0
提前致谢。
【问题讨论】:
-
在另一个列表中找到答案:def validPairs[T : Arbitrary] = ...(告诉它您将提供一种(可能是隐含的)生成 T 的方式。)
标签: scala scalacheck