56 size_t prev_offset = wbstate->
offset;
75 locale->info.builtin.casemap_full);
86 .posix = !
locale->info.builtin.casemap_full,
92 locale->info.builtin.casemap_full,
101 locale->info.builtin.casemap_full);
109 locale->info.builtin.casemap_full);
170 (ch >=
'A' && ch <=
'Z') || (ch >=
'a' && ch <=
'z');
210 if (
collid == DEFAULT_COLLATION_OID)
219 Anum_pg_database_datlocale);
232 Anum_pg_collation_colllocale);
245 result->
ctype_is_c = (strcmp(locstr,
"C") == 0);
262 if (strcmp(collcollate,
"C") == 0)
264 else if (strcmp(collcollate,
"C.UTF-8") == 0)
266 else if (strcmp(collcollate,
"PG_UNICODE_FAST") == 0)
270 (
errcode(ERRCODE_WRONG_OBJECT_TYPE),
271 errmsg(
"invalid locale name \"%s\" for builtin provider",
#define TextDatumGetCString(d)
#define IS_HIGHBIT_SET(ch)
int errcode(int sqlerrcode)
int errmsg(const char *fmt,...)
#define ereport(elevel,...)
#define HeapTupleIsValid(tuple)
static pg_wchar utf8_to_unicode(const unsigned char *c)
int GetDatabaseEncoding(void)
char * MemoryContextStrdup(MemoryContext context, const char *string)
void * MemoryContextAllocZero(MemoryContext context, Size size)
const char * builtin_validate_locale(int encoding, const char *locale)
static pg_wchar wc_toupper_builtin(pg_wchar wc, pg_locale_t locale)
static bool wc_isgraph_builtin(pg_wchar wc, pg_locale_t locale)
static pg_wchar wc_tolower_builtin(pg_wchar wc, pg_locale_t locale)
static bool wc_islower_builtin(pg_wchar wc, pg_locale_t locale)
pg_locale_t create_pg_locale_builtin(Oid collid, MemoryContext context)
static bool wc_isprint_builtin(pg_wchar wc, pg_locale_t locale)
static size_t strupper_builtin(char *dest, size_t destsize, const char *src, ssize_t srclen, pg_locale_t locale)
static size_t initcap_wbnext(void *state)
static size_t strlower_builtin(char *dest, size_t destsize, const char *src, ssize_t srclen, pg_locale_t locale)
static bool wc_ispunct_builtin(pg_wchar wc, pg_locale_t locale)
static bool char_is_cased_builtin(char ch, pg_locale_t locale)
static bool wc_isdigit_builtin(pg_wchar wc, pg_locale_t locale)
static bool wc_isupper_builtin(pg_wchar wc, pg_locale_t locale)
static size_t strfold_builtin(char *dest, size_t destsize, const char *src, ssize_t srclen, pg_locale_t locale)
char * get_collation_actual_version_builtin(const char *collcollate)
static bool wc_isspace_builtin(pg_wchar wc, pg_locale_t locale)
static bool wc_isalpha_builtin(pg_wchar wc, pg_locale_t locale)
static bool wc_isalnum_builtin(pg_wchar wc, pg_locale_t locale)
static size_t strtitle_builtin(char *dest, size_t destsize, const char *src, ssize_t srclen, pg_locale_t locale)
static const struct ctype_methods ctype_methods_builtin
static int unicode_utf8len(pg_wchar c)
static Datum ObjectIdGetDatum(Oid X)
size_t(* strlower)(char *dest, size_t destsize, const char *src, ssize_t srclen, pg_locale_t locale)
struct pg_locale_struct::@162::@163 builtin
const struct ctype_methods * ctype
union pg_locale_struct::@162 info
void ReleaseSysCache(HeapTuple tuple)
HeapTuple SearchSysCache1(int cacheId, Datum key1)
Datum SysCacheGetAttrNotNull(int cacheId, HeapTuple tup, AttrNumber attributeNumber)
pg_wchar unicode_uppercase_simple(pg_wchar code)
size_t unicode_strupper(char *dst, size_t dstsize, const char *src, ssize_t srclen, bool full)
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)
pg_wchar unicode_lowercase_simple(pg_wchar code)
size_t unicode_strfold(char *dst, size_t dstsize, const char *src, ssize_t srclen, bool full)
bool pg_u_isspace(pg_wchar code)
bool pg_u_ispunct(pg_wchar code, bool posix)
bool pg_u_isprint(pg_wchar code)
bool pg_u_islower(pg_wchar code)
bool pg_u_isalpha(pg_wchar code)
bool pg_u_isalnum(pg_wchar code, bool posix)
bool pg_u_isupper(pg_wchar code)
bool pg_u_isdigit(pg_wchar code, bool posix)
bool pg_u_isgraph(pg_wchar code)