在 Scala 2.10 中,MurmurHash
由于某种原因已弃用,说我MurmurHash3
现在应该使用。MurmurHash3
但是 API 不同,对于-> fail没有有用的 scaladocs 。
例如,当前代码:
trait Foo {
type Bar
def id: Int
def path: Bar
override def hashCode = {
import util.MurmurHash._
var h = startHash(2)
val c = startMagicA
val k = startMagicB
h = extendHash(h, id, c, k)
h = extendHash(h, path.##, nextMagicA(c), nextMagicB(k))
finalizeHash(h)
}
}
我将如何使用它MurmurHash3
来做到这一点?这需要是一个快速的操作,最好没有分配,所以我不想构造一个Product
,Seq
或Array[Byte]
任何MurmurHash3
似乎提供给我的东西。