我对这个符号<:和返回类型T => T感到困惑。这似乎返回一个函数。在对该功能进行单元测试时,我得到了一个功能。如何检查结果?
def prepend[T <: Message](node: Set[String]): T => T = { out =>
...
out.append("test")
}
T <: Message
意味着T应该是扩展Message的任何类型。
现在不可能实现函数相等/同构。这意味着无法比较a == b,其中a:T => T和b:T => T。
您只能生成随机输入,并确认它们给出的结果相同。这不是平等的证明,但总比没有好。
如果结果是val t: T=>T = prepend(...)
,则可以t
按t(some T)
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句