From: Jeff Davis <jdavis@postgresql.org>
To: pgsql-committers@lists.postgresql.org
Subject: pgsql: Control ctype behavior internally with a method table.
Date: Tue, 01 Jul 2025 14:51:39 +0000
Message-ID: <E1uWcKh-004CYm-0l@gemulon.postgresql.org> (raw)
Control ctype behavior internally with a method table.
Previously, pattern matching and case mapping behavior branched based
on the provider. Refactor to use a method table, which is less
error-prone.
This is also a step toward multiple provider versions, which we may
want to support in the future.
Reviewed-by: Andreas Karlsson <andreas@proxel.se>
Reviewed-by: Peter Eisentraut <peter@eisentraut.org>
Discussion: https://postgr.es/m/2830211e1b6e6a2e26d845780b03e125281ea17b.camel%40j-davis.com
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/5a38104b364234615c780656a8b2424f96ed9efa
Modified Files
--------------
src/backend/regex/regc_pg_locale.c | 429 ++++++------------------------
src/backend/utils/adt/like.c | 22 +-
src/backend/utils/adt/like_support.c | 7 +-
src/backend/utils/adt/pg_locale.c | 121 +++------
src/backend/utils/adt/pg_locale_builtin.c | 111 +++++++-
src/backend/utils/adt/pg_locale_icu.c | 119 ++++++++-
src/backend/utils/adt/pg_locale_libc.c | 331 ++++++++++++++++++++---
src/include/utils/pg_locale.h | 53 ++++
src/tools/pgindent/typedefs.list | 1 -
9 files changed, 686 insertions(+), 508 deletions(-)
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-committers@postgresql.org
Cc: jdavis@postgresql.org, pgsql-committers@lists.postgresql.org
Subject: Re: pgsql: Control ctype behavior internally with a method table.
In-Reply-To: <E1uWcKh-004CYm-0l@gemulon.postgresql.org>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox