BitVecIsSuperset
- Function
- August 22, 2025
Table of Contents
BitVecIsSuperset
BitVecIsSuperset
Description
Check if first bitvector is a superset of the second. A bitvector is a superset if it contains all 1-bits from the other.
Parameters
Name | Direction | Description |
---|---|---|
bv1 | in | Potential superset bitvector |
bv2 | in | Potential subset bitvector |
Usage example (from documentation)
bool is_superset = BitVecIsSuperset(&large_set, &small_set);
Usage example (Cross-references)
- In
BitVec.c:676
:
}
bool BitVecIsSuperset(BitVec *bv1, BitVec *bv2) {
return BitVecIsSubset(bv2, bv1);
}
// Test BitVecIsSuperset function
bool test_bitvec_is_superset(void) {
printf("Testing BitVecIsSuperset\n");
BitVec superset = BitVecInit();
// superset should be a superset of subset
bool result = BitVecIsSuperset(&superset, &subset);
// Test non-superset case
BitVecSet(&superset, 2, false); // Change to 1101
// Now superset (1101) is not a superset of subset (1010)
result = result && !BitVecIsSuperset(&superset, &subset);
// Test equal sets (should be superset)
BitVecPush(&superset, false);
result = result && BitVecIsSuperset(&superset, &subset);
// Clean up
result = result && BitVecIsSubset(&subset, &superset);
result = result && BitVecIsSuperset(&superset, &subset);
// Clean up