Refactor string case conversion into provider-specific files. Create API entry points pg_strlower(), etc., that work with any provider and give the caller control over the destination buffer. Then, move provider-specific logic into pg_locale_builtin.c, pg_locale_icu.c, and pg_locale_libc.c as appropriate.
Discussion: https://postgr.es/m/7aa46d77b377428058403723440862d12a8a129a.ca...@j-davis.com Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/86a5d6006aff956a5e00982b7628177fa7dc5027 Modified Files -------------- src/backend/utils/adt/formatting.c | 465 ++++-------------------------- src/backend/utils/adt/pg_locale.c | 78 +++++ src/backend/utils/adt/pg_locale_builtin.c | 80 +++++ src/backend/utils/adt/pg_locale_icu.c | 130 ++++++++- src/backend/utils/adt/pg_locale_libc.c | 327 +++++++++++++++++++++ src/include/utils/pg_locale.h | 14 +- 6 files changed, 676 insertions(+), 418 deletions(-)