mirror of
https://github.com/postgres/postgres.git
synced 2025-11-11 00:05:02 -05:00
Expand case mapping tables to include entries for case folding, which are parsed from CaseFolding.txt. Discussion: https://postgr.es/m/a1886ddfcd8f60cb3e905c93009b646b4cfb74c5.camel%40j-davis.com
36 lines
1.2 KiB
C
36 lines
1.2 KiB
C
/*-------------------------------------------------------------------------
|
|
*
|
|
* unicode_case.h
|
|
* Routines for converting character case.
|
|
*
|
|
* These definitions can be used by both frontend and backend code.
|
|
*
|
|
* Copyright (c) 2017-2025, PostgreSQL Global Development Group
|
|
*
|
|
* src/include/common/unicode_case.h
|
|
*
|
|
*-------------------------------------------------------------------------
|
|
*/
|
|
#ifndef UNICODE_CASE_H
|
|
#define UNICODE_CASE_H
|
|
|
|
#include "mb/pg_wchar.h"
|
|
|
|
typedef size_t (*WordBoundaryNext) (void *wbstate);
|
|
|
|
pg_wchar unicode_lowercase_simple(pg_wchar code);
|
|
pg_wchar unicode_titlecase_simple(pg_wchar code);
|
|
pg_wchar unicode_uppercase_simple(pg_wchar code);
|
|
pg_wchar unicode_casefold_simple(pg_wchar 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);
|
|
|
|
#endif /* UNICODE_CASE_H */
|