MCPcopy
hub / github.com/RoaringBitmap/roaring / iandNotBitmapSurely

Method iandNotBitmapSurely

bitmapcontainer.go:1080–1090  ·  view source on GitHub ↗
(value2 *bitmapContainer)

Source from the content-addressed store, hash-verified

1078}
1079
1080func (bc *bitmapContainer) iandNotBitmapSurely(value2 *bitmapContainer) container {
1081 newCardinality := int(popcntMaskSlice(bc.bitmap, value2.bitmap))
1082 for k := 0; k < len(bc.bitmap); k++ {
1083 bc.bitmap[k] = bc.bitmap[k] &^ value2.bitmap[k]
1084 }
1085 bc.cardinality = newCardinality
1086 if bc.getCardinality() <= arrayDefaultMaxSize {
1087 return bc.toArrayContainer()
1088 }
1089 return bc
1090}
1091
1092func (bc *bitmapContainer) contains(i uint16) bool { // testbit
1093 x := uint(i)

Callers 3

iandNotMethod · 0.95
iandNotArrayMethod · 0.80
iandNotBitmapMethod · 0.80

Calls 3

getCardinalityMethod · 0.95
toArrayContainerMethod · 0.95
popcntMaskSliceFunction · 0.70

Tested by

no test coverage detected