in qf.go [120:144]
func NewWithConfig(c Config) *Filter {
var qf Filter
if c.BitPacked {
qf.allocfn = BitPackedVectorAllocate
} else {
qf.allocfn = UnpackedVectorAllocate
}
if c.HashFn == nil {
c.HashFn = murmurhash64
}
qf.hashfn = c.HashFn
qbits := c.QBits()
qf.initForQuotientBits(uint(qbits))
qf.config = c
qf.allocStorage()
if qf.maxEntries > qf.size {
panic("internal inconsistency")
}
return &qf
}