This repository has been archived by the owner on Jul 7, 2020. It is now read-only.
Add support for intersection to BloomFilter. #134
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I realize that intersection will have the false positive rate of the maximum of the false positive rates of the intersected bloom filters, but this is a useful feature. You already provide support for unions via the
merge
method.One concerning thing about the existing union support is that it doesn't check the size of the underlying bitset. This should probably be added to the checks for compatibility purposes before performing a merge. Similarly, it would be nice to add that check for intersection as well.
I'm willing to add code for
isCompatible
or similar to confirm compatibility before doing merges orintersection
if you will allow that change.