Home | History | Annotate | Download | only in ADT

Lines Matching defs:BitVector

1 //===- llvm/ADT/BitVector.h - Bit vectors -----------------------*- C++ -*-===//
10 // This file implements the BitVector class.
28 class BitVector {
37 unsigned Size; // Size of bitvector in bits.
44 friend class BitVector;
50 reference(BitVector &b, unsigned Idx) {
77 /// BitVector default ctor - Creates an empty bitvector.
78 BitVector() : Size(0), Capacity(0) {
82 /// BitVector ctor - Creates a bitvector of specified number of bits. All
84 explicit BitVector(unsigned s, bool t = false) : Size(s) {
92 /// BitVector copy ctor.
93 BitVector(const BitVector &RHS) : Size(RHS.size()) {
105 BitVector(BitVector &&RHS)
111 ~BitVector() {
115 /// empty - Tests whether there are no bits in this bitvector.
118 /// size - Returns the number of bits in this bitvector.
227 /// resize - Grow or shrink the bitvector.
235 // Set any old unused bits that are now included in the BitVector. This
254 BitVector &set() {
260 BitVector &set(unsigned Idx) {
267 BitVector &set(unsigned I, unsigned E) {
295 BitVector &reset() {
300 BitVector &reset(unsigned Idx) {
306 BitVector &reset(unsigned I, unsigned E) {
334 BitVector &flip() {
341 BitVector &flip(unsigned Idx) {
363 bool anyCommon(const BitVector &RHS) const {
373 bool operator==(const BitVector &RHS) const {
394 bool operator!=(const BitVector &RHS) const {
399 BitVector &operator&=(const BitVector &RHS) {
406 // Any bits that are just in this bitvector become zero, because they aren't
416 BitVector &reset(const BitVector &RHS) {
427 bool test(const BitVector &RHS) const {
442 BitVector &operator|=(const BitVector &RHS) {
450 BitVector &operator^=(const BitVector &RHS) {
459 const BitVector &operator=(const BitVector &RHS) {
471 // Grow the bitvector to have enough elements.
484 const BitVector &operator=(BitVector &&RHS) {
498 void swap(BitVector &RHS) {
514 // given, the bit mask is assumed to cover the entire BitVector.
618 static inline size_t capacity_in_bytes(const BitVector &X) {
625 /// Implement std::swap in terms of BitVector swap.
627 swap(llvm::BitVector &LHS, llvm::BitVector &RHS) {