github.com/vc42/parquet-go@v0.0.0-20240320194221-1a9adb5f23f5/bloom/bloom.go (about)

     1  // Package bloom implements parquet bloom filters.
     2  package bloom
     3  
     4  func fasthash1x64(value uint64, scale int32) uint64 {
     5  	return ((value >> 32) * uint64(scale)) >> 32
     6  }
     7  
     8  func fasthash4x64(dst, src *[4]uint64, scale int32) {
     9  	dst[0] = ((src[0] >> 32) * uint64(scale)) >> 32
    10  	dst[1] = ((src[1] >> 32) * uint64(scale)) >> 32
    11  	dst[2] = ((src[2] >> 32) * uint64(scale)) >> 32
    12  	dst[3] = ((src[3] >> 32) * uint64(scale)) >> 32
    13  }