MySQL 8.0.39
Source Code Documentation
uca_scanner_any< Mb_wc > Struct Template Reference
Inheritance diagram for uca_scanner_any< Mb_wc >:
[legend]

Public Member Functions

 uca_scanner_any (const Mb_wc mb_wc, const CHARSET_INFO *cs_arg, const uchar *str, size_t length)
 
uint get_char_index () const
 
int next ()
 
- Public Member Functions inherited from my_uca_scanner
uint get_weight_level () const
 Get the level the scanner is currently working on. More...
 

Private Member Functions

int next_implicit (my_wc_t ch)
 Return implicit UCA weight Used for code points that do not have assigned UCA weights. More...
 

Private Attributes

uint char_index {0}
 How many code points (possibly multibyte) we have scanned so far. More...
 
const Mb_wc mb_wc
 

Additional Inherited Members

- Protected Member Functions inherited from my_uca_scanner
 my_uca_scanner (const CHARSET_INFO *cs_arg, const uchar *str, size_t length)
 
const uint16contraction_find (my_wc_t wc0, size_t *chars_skipped)
 Find a contraction in the input stream and return its weight array. More...
 
const uint16previous_context_find (my_wc_t wc0, my_wc_t wc1)
 Find weight for contraction with previous context and return its weight array. More...
 
- Protected Attributes inherited from my_uca_scanner
uint weight_lv {0}
 
const uint16wbeg
 
uint wbeg_stride {0}
 
const ucharsbeg
 
const ucharsend
 
const MY_UCA_INFOuca
 
uint16 implicit [10]
 
my_wc_t prev_char {0}
 
const CHARSET_INFOcs
 
uint num_of_ce_left {0}
 
const ucharsbeg_dup
 

Constructor & Destructor Documentation

◆ uca_scanner_any()

template<class Mb_wc >
uca_scanner_any< Mb_wc >::uca_scanner_any ( const Mb_wc  mb_wc,
const CHARSET_INFO cs_arg,
const uchar str,
size_t  length 
)
inline

Member Function Documentation

◆ get_char_index()

template<class Mb_wc >
uint uca_scanner_any< Mb_wc >::get_char_index ( ) const
inline

◆ next()

template<class Mb_wc >
ALWAYS_INLINE int uca_scanner_any< Mb_wc >::next ( void  )
inline

◆ next_implicit()

template<class Mb_wc >
ALWAYS_INLINE int uca_scanner_any< Mb_wc >::next_implicit ( my_wc_t  ch)
inlineprivate

Return implicit UCA weight Used for code points that do not have assigned UCA weights.

Returns
The leading implicit weight.

Member Data Documentation

◆ char_index

template<class Mb_wc >
uint uca_scanner_any< Mb_wc >::char_index {0}
private

How many code points (possibly multibyte) we have scanned so far.

This includes code points with zero weight. Note that this is reset once we get to the end of the string and restart the scanning for the next weight level, but it is not reset when we reach the end of the last level.

◆ mb_wc

template<class Mb_wc >
const Mb_wc uca_scanner_any< Mb_wc >::mb_wc
private

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