MySQL 9.1.0
Source Code Documentation
|
Unicode Collation Algorithm: Collation element (weight) scanner, for consequent scan of collations weights from a string. More...
Public Member Functions | |
unsigned | get_weight_level () const |
Get the level the scanner is currently working on. More... | |
Protected Member Functions | |
my_uca_scanner (const CHARSET_INFO *cs_arg, const uint8_t *str, size_t length) | |
const uint16_t * | contraction_find (my_wc_t wc0, size_t *chars_skipped) |
Find a contraction in the input stream and return its weight array. More... | |
const uint16_t * | previous_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 | |
unsigned | weight_lv {0} |
const uint16_t * | wbeg |
unsigned | wbeg_stride {0} |
const uint8_t * | sbeg |
const uint8_t * | send |
const MY_UCA_INFO * | uca {nullptr} |
uint16_t | implicit [10] {} |
my_wc_t | prev_char {0} |
const CHARSET_INFO * | cs |
unsigned | num_of_ce_left {0} |
const uint8_t * | sbeg_dup |
Unicode Collation Algorithm: Collation element (weight) scanner, for consequent scan of collations weights from a string.
Only meant as a base class; instantiate uca_scanner_any or uca_scanner_900 instead of this.
|
inlineprotected |
|
protected |
Find a contraction in the input stream and return its weight array.
Scan input code points to find a longest path in contraction trie which contains all these code points. If the ending node of this path is end of contraction, return the weight array.
wc0 | The first code point of the contraction (which should have the MY_UCA_CNT_HEAD flag). | |
[out] | chars_skipped | How many code points where skipped in the contraction we found. Only makes sense if we actually found one. |
NULL | no contraction found |
ptr | contraction weight array |
|
inline |
Get the level the scanner is currently working on.
The string can be scanned multiple times (if the collation requires multi-level comparisons, e.g. for accent or case sensitivity); first to get primary weights, then from the start again for secondary, etc.
|
inlineprotected |
Find weight for contraction with previous context and return its weight array.
wc0 | Previous code point |
wc1 | Current code point |
NULL | - no contraction with context found |
ptr | - contraction weight array |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |