MySQL 8.4.0
Source Code Documentation
Bitmap< default_width > Class Template Reference

#include <sql_bitmap.h>

Public Types

enum  { ALL_BITS = default_width }
 

Public Member Functions

 Bitmap ()
 
 Bitmap (const Bitmap &from)
 
 Bitmap (uint prefix_to_set)
 
void init ()
 
void init (uint prefix_to_set)
 
uint length () const
 
Bitmapoperator= (const Bitmap &map2)
 
void set_bit (uint n)
 
void clear_bit (uint n)
 
void set_prefix (uint n)
 
void set_all ()
 
void clear_all ()
 
void intersect (const Bitmap &map2)
 
void intersect (ulonglong map2buff)
 
void intersect_extended (ulonglong map2buff)
 
void subtract (const Bitmap &map2)
 
void merge (const Bitmap &map2)
 
bool is_set (uint n) const
 
bool is_prefix (uint n) const
 
bool is_clear_all () const
 
bool is_set_all () const
 
bool is_subset (const Bitmap &map2) const
 
bool is_overlapping (const Bitmap &map2) const
 
bool operator== (const Bitmap &map2) const
 
bool operator!= (const Bitmap &map2) const
 
char * print (char *buf) const
 
ulonglong to_ulonglong () const
 
uint bits_set () const
 
uint get_first_set () const
 
uint get_next_set (uint bit_no) const
 Find the next set bit after 'bit_no'. More...
 

Private Attributes

MY_BITMAP map
 
uint32 buffer [(default_width+31)/32]
 

Member Enumeration Documentation

◆ anonymous enum

template<uint default_width>
anonymous enum
Enumerator
ALL_BITS 

Constructor & Destructor Documentation

◆ Bitmap() [1/3]

template<uint default_width>
Bitmap< default_width >::Bitmap ( )
inline

◆ Bitmap() [2/3]

template<uint default_width>
Bitmap< default_width >::Bitmap ( const Bitmap< default_width > &  from)
inline

◆ Bitmap() [3/3]

template<uint default_width>
Bitmap< default_width >::Bitmap ( uint  prefix_to_set)
inlineexplicit

Member Function Documentation

◆ bits_set()

template<uint default_width>
uint Bitmap< default_width >::bits_set ( ) const
inline

◆ clear_all()

template<uint default_width>
void Bitmap< default_width >::clear_all ( )
inline

◆ clear_bit()

template<uint default_width>
void Bitmap< default_width >::clear_bit ( uint  n)
inline

◆ get_first_set()

template<uint default_width>
uint Bitmap< default_width >::get_first_set ( ) const
inline

◆ get_next_set()

template<uint default_width>
uint Bitmap< default_width >::get_next_set ( uint  bit_no) const
inline

Find the next set bit after 'bit_no'.

Parameters
bit_noStart search at bit_no+1.
Returns
index of next set bit, or MY_BIT_NONE.

◆ init() [1/2]

template<uint default_width>
void Bitmap< default_width >::init ( void  )
inline

◆ init() [2/2]

template<uint default_width>
void Bitmap< default_width >::init ( uint  prefix_to_set)
inline

◆ intersect() [1/2]

template<uint default_width>
void Bitmap< default_width >::intersect ( const Bitmap< default_width > &  map2)
inline

◆ intersect() [2/2]

template<uint default_width>
void Bitmap< default_width >::intersect ( ulonglong  map2buff)
inline

◆ intersect_extended()

template<uint default_width>
void Bitmap< default_width >::intersect_extended ( ulonglong  map2buff)
inline

◆ is_clear_all()

template<uint default_width>
bool Bitmap< default_width >::is_clear_all ( ) const
inline

◆ is_overlapping()

template<uint default_width>
bool Bitmap< default_width >::is_overlapping ( const Bitmap< default_width > &  map2) const
inline

◆ is_prefix()

template<uint default_width>
bool Bitmap< default_width >::is_prefix ( uint  n) const
inline

◆ is_set()

template<uint default_width>
bool Bitmap< default_width >::is_set ( uint  n) const
inline

◆ is_set_all()

template<uint default_width>
bool Bitmap< default_width >::is_set_all ( ) const
inline

◆ is_subset()

template<uint default_width>
bool Bitmap< default_width >::is_subset ( const Bitmap< default_width > &  map2) const
inline

◆ length()

template<uint default_width>
uint Bitmap< default_width >::length ( ) const
inline

◆ merge()

template<uint default_width>
void Bitmap< default_width >::merge ( const Bitmap< default_width > &  map2)
inline

◆ operator!=()

template<uint default_width>
bool Bitmap< default_width >::operator!= ( const Bitmap< default_width > &  map2) const
inline

◆ operator=()

template<uint default_width>
Bitmap & Bitmap< default_width >::operator= ( const Bitmap< default_width > &  map2)
inline

◆ operator==()

template<uint default_width>
bool Bitmap< default_width >::operator== ( const Bitmap< default_width > &  map2) const
inline

◆ print()

template<uint default_width>
char * Bitmap< default_width >::print ( char *  buf) const
inline

◆ set_all()

template<uint default_width>
void Bitmap< default_width >::set_all ( )
inline

◆ set_bit()

template<uint default_width>
void Bitmap< default_width >::set_bit ( uint  n)
inline

◆ set_prefix()

template<uint default_width>
void Bitmap< default_width >::set_prefix ( uint  n)
inline

◆ subtract()

template<uint default_width>
void Bitmap< default_width >::subtract ( const Bitmap< default_width > &  map2)
inline

◆ to_ulonglong()

template<uint default_width>
ulonglong Bitmap< default_width >::to_ulonglong ( ) const
inline

Member Data Documentation

◆ buffer

template<uint default_width>
uint32 Bitmap< default_width >::buffer[(default_width+31)/32]
private

◆ map

template<uint default_width>
MY_BITMAP Bitmap< default_width >::map
private

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