|
PostgreSQL Source Code git master
|
#include "postgres.h"#include "common/unicode_case.h"#include "common/unicode_case_table.h"#include "common/unicode_category.h"#include "mb/pg_wchar.h"
Go to the source code of this file.
Enumerations | |
| enum | CaseMapResult { CASEMAP_SELF , CASEMAP_SIMPLE , CASEMAP_SPECIAL } |
Functions | |
| static char32_t | find_case_map (char32_t ucs, const char32_t *map) |
| static size_t | convert_case (char *dst, size_t dstsize, const char *src, ssize_t srclen, CaseKind str_casekind, bool full, WordBoundaryNext wbnext, void *wbstate) |
| static enum CaseMapResult | casemap (char32_t u1, CaseKind casekind, bool full, const char *src, size_t srclen, size_t srcoff, char32_t *simple, const char32_t **special) |
| char32_t | unicode_lowercase_simple (char32_t code) |
| char32_t | unicode_titlecase_simple (char32_t code) |
| char32_t | unicode_uppercase_simple (char32_t code) |
| char32_t | unicode_casefold_simple (char32_t code) |
| size_t | unicode_strlower (char *dst, size_t dstsize, const char *src, ssize_t srclen, bool full) |
| size_t | unicode_strtitle (char *dst, size_t dstsize, const char *src, ssize_t srclen, bool full, WordBoundaryNext wbnext, void *wbstate) |
| size_t | unicode_strupper (char *dst, size_t dstsize, const char *src, ssize_t srclen, bool full) |
| size_t | unicode_strfold (char *dst, size_t dstsize, const char *src, ssize_t srclen, bool full) |
| static bool | check_final_sigma (const unsigned char *str, size_t len, size_t offset) |
| static bool | check_special_conditions (int conditions, const char *str, size_t len, size_t offset) |
Variables | |
| static const char32_t *const | casekind_map [NCaseKind] |
| enum CaseMapResult |
| Enumerator | |
|---|---|
| CASEMAP_SELF | |
| CASEMAP_SIMPLE | |
| CASEMAP_SPECIAL | |
Definition at line 23 of file unicode_case.c.
|
static |
Definition at line 397 of file unicode_case.c.
References case_index(), case_map_special, casekind_map, CASEMAP_SELF, CASEMAP_SIMPLE, CASEMAP_SPECIAL, check_special_conditions(), idx(), pg_special_case::map, and special_case.
Referenced by convert_case(), and main().
|
static |
Definition at line 312 of file unicode_case.c.
References Assert(), i, len, pg_u_prop_case_ignorable(), pg_u_prop_cased(), str, and utf8_to_unicode().
Referenced by check_special_conditions().
|
static |
Definition at line 370 of file unicode_case.c.
References Assert(), check_final_sigma(), len, PG_U_FINAL_SIGMA, and str.
Referenced by casemap().
|
static |
Definition at line 213 of file unicode_case.c.
References Assert(), CaseLower, casemap(), CASEMAP_SELF, CASEMAP_SIMPLE, CASEMAP_SPECIAL, CaseTitle, CaseUpper, i, MAX_CASE_EXPANSION, unicode_to_utf8(), unicode_utf8len(), and utf8_to_unicode().
Referenced by unicode_strfold(), unicode_strlower(), unicode_strtitle(), and unicode_strupper().
Definition at line 438 of file unicode_case.c.
References case_index().
Referenced by unicode_casefold_simple(), unicode_lowercase_simple(), unicode_titlecase_simple(), and unicode_uppercase_simple().
Definition at line 74 of file unicode_case.c.
References case_map_fold, and find_case_map().
Definition at line 50 of file unicode_case.c.
References case_map_lower, and find_case_map().
Referenced by wc_tolower_builtin().
| size_t unicode_strfold | ( | char * | dst, |
| size_t | dstsize, | ||
| const char * | src, | ||
| ssize_t | srclen, | ||
| bool | full | ||
| ) |
Definition at line 189 of file unicode_case.c.
References CaseFold, and convert_case().
Referenced by strfold_builtin(), and tfunc_fold().
| size_t unicode_strlower | ( | char * | dst, |
| size_t | dstsize, | ||
| const char * | src, | ||
| ssize_t | srclen, | ||
| bool | full | ||
| ) |
Definition at line 101 of file unicode_case.c.
References CaseLower, and convert_case().
Referenced by strlower_builtin(), and tfunc_lower().
| size_t unicode_strtitle | ( | char * | dst, |
| size_t | dstsize, | ||
| const char * | src, | ||
| ssize_t | srclen, | ||
| bool | full, | ||
| WordBoundaryNext | wbnext, | ||
| void * | wbstate | ||
| ) |
Definition at line 138 of file unicode_case.c.
References CaseTitle, and convert_case().
Referenced by strtitle_builtin(), and tfunc_title().
| size_t unicode_strupper | ( | char * | dst, |
| size_t | dstsize, | ||
| const char * | src, | ||
| ssize_t | srclen, | ||
| bool | full | ||
| ) |
Definition at line 165 of file unicode_case.c.
References CaseUpper, and convert_case().
Referenced by strupper_builtin(), and tfunc_upper().
Definition at line 58 of file unicode_case.c.
References case_map_title, and find_case_map().
Definition at line 66 of file unicode_case.c.
References case_map_upper, and find_case_map().
Referenced by wc_toupper_builtin().
Definition at line 33 of file unicode_case.c.
Referenced by casemap().