MySQL 8.0.39
Source Code Documentation
MutableOverflowBitset Class Reference

#include <overflow_bitset.h>

Inheritance diagram for MutableOverflowBitset:
[legend]

Public Member Functions

 MutableOverflowBitset (MEM_ROOT *mem_root, size_t capacity)
 
 MutableOverflowBitset (const MutableOverflowBitset &)=delete
 
MutableOverflowBitsetoperator= (const MutableOverflowBitset &)=delete
 
 MutableOverflowBitset (MutableOverflowBitset &&other)
 
MutableOverflowBitsetoperator= (MutableOverflowBitset &&other)
 
void SetBit (int bit_num)
 
void ClearBits (int begin_bit_num, int end_bit_num)
 
void ClearBit (int bit_num)
 
MutableOverflowBitset Clone (MEM_ROOT *mem_root) const
 

Private Member Functions

void SetBitOverflow (int bit_num)
 
void ClearBitsOverflow (int begin_bit_num, int end_bit_num)
 
- Private Member Functions inherited from OverflowBitset
 OverflowBitset ()
 
 OverflowBitset (uint32_t bits)
 
void Clear ()
 
 OverflowBitset (const OverflowBitset &)=default
 
 OverflowBitset (OverflowBitset &&)=default
 
OverflowBitsetoperator= (const OverflowBitset &)=default
 
OverflowBitsetoperator= (OverflowBitset &&)=default
 
 OverflowBitset (MutableOverflowBitset &&)
 
OverflowBitsetoperator= (MutableOverflowBitset &&)
 
bool is_inline () const
 
bool empty ()
 
size_t capacity () const
 
MutableOverflowBitset Clone (MEM_ROOT *mem_root) const
 
bool IsContainedIn (const MEM_ROOT *mem_root) const
 
void InitOverflow (MEM_ROOT *mem_root, size_t capacity)
 

Friends

class OverflowBitset
 
bool IsBitSet (int bit_num, const MutableOverflowBitset &x)
 
bool Overlaps (OverflowBitset a, const MutableOverflowBitset &b)
 
bool Overlaps (const MutableOverflowBitset &a, const MutableOverflowBitset &b)
 
bool Overlaps (const MutableOverflowBitset &a, OverflowBitset b)
 
bool IsSubset (OverflowBitset a, const MutableOverflowBitset &b)
 
bool IsSubset (const MutableOverflowBitset &a, const MutableOverflowBitset &b)
 
bool IsSubset (const MutableOverflowBitset &a, OverflowBitset b)
 
bool IsEmpty (const MutableOverflowBitset &x)
 
int PopulationCount (const MutableOverflowBitset &x)
 Find the nuber of bits set in 'x'. More...
 

Additional Inherited Members

- Static Private Member Functions inherited from OverflowBitset
static MutableOverflowBitset Or (MEM_ROOT *mem_root, OverflowBitset a, OverflowBitset b)
 
static MutableOverflowBitset And (MEM_ROOT *mem_root, OverflowBitset a, OverflowBitset b)
 
static MutableOverflowBitset Xor (MEM_ROOT *mem_root, OverflowBitset a, OverflowBitset b)
 
static MutableOverflowBitset OrOverflow (MEM_ROOT *mem_root, OverflowBitset a, OverflowBitset b)
 
static MutableOverflowBitset AndOverflow (MEM_ROOT *mem_root, OverflowBitset a, OverflowBitset b)
 
static MutableOverflowBitset XorOverflow (MEM_ROOT *mem_root, OverflowBitset a, OverflowBitset b)
 
union {
   uint64_t   m_bits
 
   Ext *   m_ext
 
}; 
 
- Static Private Attributes inherited from OverflowBitset
static constexpr int kInlineBits = sizeof(m_bits) * CHAR_BIT - 1
 

Constructor & Destructor Documentation

◆ MutableOverflowBitset() [1/3]

MutableOverflowBitset::MutableOverflowBitset ( MEM_ROOT mem_root,
size_t  capacity 
)
inline

◆ MutableOverflowBitset() [2/3]

MutableOverflowBitset::MutableOverflowBitset ( const MutableOverflowBitset )
delete

◆ MutableOverflowBitset() [3/3]

MutableOverflowBitset::MutableOverflowBitset ( MutableOverflowBitset &&  other)
inline

Member Function Documentation

◆ ClearBit()

void MutableOverflowBitset::ClearBit ( int  bit_num)
inline

◆ ClearBits()

void MutableOverflowBitset::ClearBits ( int  begin_bit_num,
int  end_bit_num 
)
inline

◆ ClearBitsOverflow()

void MutableOverflowBitset::ClearBitsOverflow ( int  begin_bit_num,
int  end_bit_num 
)
private

◆ Clone()

MutableOverflowBitset MutableOverflowBitset::Clone ( MEM_ROOT mem_root) const
inline

◆ operator=() [1/2]

MutableOverflowBitset & MutableOverflowBitset::operator= ( const MutableOverflowBitset )
delete

◆ operator=() [2/2]

MutableOverflowBitset & MutableOverflowBitset::operator= ( MutableOverflowBitset &&  other)
inline

◆ SetBit()

void MutableOverflowBitset::SetBit ( int  bit_num)
inline

◆ SetBitOverflow()

void MutableOverflowBitset::SetBitOverflow ( int  bit_num)
private

Friends And Related Function Documentation

◆ IsBitSet

bool IsBitSet ( int  bit_num,
const MutableOverflowBitset x 
)
friend

◆ IsEmpty

bool IsEmpty ( const MutableOverflowBitset x)
friend

◆ IsSubset [1/3]

bool IsSubset ( const MutableOverflowBitset a,
const MutableOverflowBitset b 
)
friend

◆ IsSubset [2/3]

bool IsSubset ( const MutableOverflowBitset a,
OverflowBitset  b 
)
friend

◆ IsSubset [3/3]

bool IsSubset ( OverflowBitset  a,
const MutableOverflowBitset b 
)
friend

◆ OverflowBitset

friend class OverflowBitset
friend

◆ Overlaps [1/3]

bool Overlaps ( const MutableOverflowBitset a,
const MutableOverflowBitset b 
)
friend

◆ Overlaps [2/3]

bool Overlaps ( const MutableOverflowBitset a,
OverflowBitset  b 
)
friend

◆ Overlaps [3/3]

bool Overlaps ( OverflowBitset  a,
const MutableOverflowBitset b 
)
friend

◆ PopulationCount

int PopulationCount ( const MutableOverflowBitset x)
friend

Find the nuber of bits set in 'x'.


The documentation for this class was generated from the following files: