summaryrefslogtreecommitdiff
path: root/src/backend/utils/adt/pg_locale_builtin.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/utils/adt/pg_locale_builtin.c')
-rw-r--r--src/backend/utils/adt/pg_locale_builtin.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/backend/utils/adt/pg_locale_builtin.c b/src/backend/utils/adt/pg_locale_builtin.c
index 526ab3c6711..3dc611b50e1 100644
--- a/src/backend/utils/adt/pg_locale_builtin.c
+++ b/src/backend/utils/adt/pg_locale_builtin.c
@@ -164,6 +164,12 @@ wc_isspace_builtin(pg_wchar wc, pg_locale_t locale)
}
static bool
+wc_isxdigit_builtin(pg_wchar wc, pg_locale_t locale)
+{
+ return pg_u_isxdigit(wc, !locale->builtin.casemap_full);
+}
+
+static bool
char_is_cased_builtin(char ch, pg_locale_t locale)
{
return IS_HIGHBIT_SET(ch) ||
@@ -196,6 +202,7 @@ static const struct ctype_methods ctype_methods_builtin = {
.wc_isprint = wc_isprint_builtin,
.wc_ispunct = wc_ispunct_builtin,
.wc_isspace = wc_isspace_builtin,
+ .wc_isxdigit = wc_isxdigit_builtin,
.char_is_cased = char_is_cased_builtin,
.wc_tolower = wc_tolower_builtin,
.wc_toupper = wc_toupper_builtin,