summaryrefslogtreecommitdiff
path: root/coverage/numbits.py
diff options
context:
space:
mode:
Diffstat (limited to 'coverage/numbits.py')
-rw-r--r--coverage/numbits.py6
1 files changed, 6 insertions, 0 deletions
diff --git a/coverage/numbits.py b/coverage/numbits.py
index bc29ed94..19c328c4 100644
--- a/coverage/numbits.py
+++ b/coverage/numbits.py
@@ -40,3 +40,9 @@ def merge_numbits(numbits1, numbits2):
"""Merge two numbits"""
byte_pairs = zip_longest(bytes_to_ints(numbits1), bytes_to_ints(numbits2), fillvalue=0)
return binary_bytes(b1 | b2 for b1, b2 in byte_pairs)
+
+@contract(numbits1='bytes', numbits2='bytes', returns='bool')
+def numbits_any_intersection(numbits1, numbits2):
+ """Is there any number that appears in both numbits?"""
+ byte_pairs = zip_longest(bytes_to_ints(numbits1), bytes_to_ints(numbits2), fillvalue=0)
+ return any(b1 & b2 for b1, b2 in byte_pairs)