Simplify pg_enc2gettext_tbl[] with C99-designated initializer syntax

Michael Paquier <michael@paquier.xyz>

Commit: 655dc310460c601d434d05339b7fa46ed97675b3
Author: Michael Paquier <michael@paquier.xyz>
Date: 2024-03-01T09:03:48Z
Releases: 17.0
Simplify pg_enc2gettext_tbl[] with C99-designated initializer syntax

This commit switches pg_enc2gettext_tbl[] in encnames.c to use a
C99-designated initializer syntax.

pg_bind_textdomain_codeset() is simplified so as it is possible to do
a direct lookup at the gettext() array with a value of the enum pg_enc
rather than doing a loop through all its elements, as long as the
encoding value provided by GetDatabaseEncoding() is in the correct range
of supported encoding values.  Note that PG_MULE_INTERNAL gains a value
in the array, pointing to NULL.

Author: Jelte Fennema-Nio
Discussion: https://postgr.es/m/CAGECzQT3caUbcCcszNewCCmMbCuyP7XNAm60J3ybd6PN5kH2Dw@mail.gmail.com

Files

PathChange+/−
src/backend/utils/mb/mbutils.c modified +9 −15
src/common/encnames.c modified +43 −43
src/include/mb/pg_wchar.h modified +3 −8
src/tools/pgindent/typedefs.list modified +0 −1

Discussion