[#bitset_detail-IntBitSet] = xref:bitset_detail.adoc[bitset_detail]::IntBitSet :relfileprefix: ../ :mrdocs: A bitset implementation backed by a single integer of type I. == Synopsis Declared in `<util/bitset.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<typename I> class IntBitSet; ---- == Member Functions [cols="1,4"] |=== | Name| Description | xref:bitset_detail/IntBitSet/2constructor-0c.adoc[`IntBitSet`] [.small]#[constructor]# | Constructors | xref:bitset_detail/IntBitSet/operator_assign-02.adoc[`operator=`] | Assignment operators | xref:bitset_detail/IntBitSet/Any.adoc[`Any`] | Check if any bits are 1. | xref:bitset_detail/IntBitSet/Count.adoc[`Count`] | Compute the number of 1 bits in the bitset. | xref:bitset_detail/IntBitSet/First.adoc[`First`] | Find the first element (requires Any()). | xref:bitset_detail/IntBitSet/IsSubsetOf.adoc[`IsSubsetOf`] | Check if bitset a is a subset of bitset b (= every 1 bit in a is also in b). | xref:bitset_detail/IntBitSet/IsSupersetOf.adoc[`IsSupersetOf`] | Check if bitset a is a superset of bitset b (= every 1 bit in b is also in a). | xref:bitset_detail/IntBitSet/Last.adoc[`Last`] | Find the last element (requires Any()). | xref:bitset_detail/IntBitSet/None.adoc[`None`] | Check if all bits are 0. | xref:bitset_detail/IntBitSet/Overlaps.adoc[`Overlaps`] | Check if the intersection between two sets is non‐empty. | xref:bitset_detail/IntBitSet/Reset.adoc[`Reset`] | Set a bit to 0. | xref:bitset_detail/IntBitSet/Set-0a.adoc[`Set`] | `Set` overloads | xref:bitset_detail/IntBitSet/begin.adoc[`begin`] | Return an object that iterates over all 1 bits (++ and * only allowed when != end()). | xref:bitset_detail/IntBitSet/end.adoc[`end`] | Return a dummy object to compare Iterators with. | xref:bitset_detail/IntBitSet/operator_and_eq.adoc[`operator&=`] | Set this object's bits to be the binary AND between respective bits from this and a. | xref:bitset_detail/IntBitSet/operator_minus_eq.adoc[`operator‐=`] | Set this object's bits to be the binary AND NOT between respective bits from this and a. | xref:bitset_detail/IntBitSet/operator_subs.adoc[`operator[]`] | Retrieve a bit at the given position. | xref:bitset_detail/IntBitSet/operator_xor_eq.adoc[`operatorˆ=`] | Set this object's bits to be the binary XOR between respective bits from this and a. | xref:bitset_detail/IntBitSet/operator_or_eq.adoc[`operator|=`] | Set this object's bits to be the binary OR between respective bits from this and a. |=== == Static Member Functions [cols="1,4"] |=== | Name| Description | xref:bitset_detail/IntBitSet/Fill.adoc[`Fill`] | Construct a bitset with bits 0..count‐1 (inclusive) set to 1. | xref:bitset_detail/IntBitSet/Singleton.adoc[`Singleton`] | Construct a bitset with the singleton i. | xref:bitset_detail/IntBitSet/Size.adoc[`Size`] | Return the number of bits that this object holds. |=== == Friends [cols="1,4"] |=== | Name| Description | `xref:bitset_detail/swap-0d.adoc[bitset_detail::swap]` | Swap two bitsets. | `xref:bitset_detail/operator_eq-0a.adoc[bitset_detail::operator==]` | Check if bitset a and bitset b are identical. | `xref:bitset_detail/operator_xor-01.adoc[bitset_detail::operatorˆ]` | Return an object with the binary XOR between respective bits from a and b. | `xref:bitset_detail/operator_minus-0f.adoc[bitset_detail::operator‐]` | Return an object with the binary AND NOT between respective bits from a and b. | `xref:bitset_detail/operator_bitor-01.adoc[bitset_detail::operator|]` | Return an object with the binary OR between respective bits from a and b. | `xref:bitset_detail/operator_bitand-00.adoc[bitset_detail::operator&]` | Return an object with the binary AND between respective bits from a and b. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#