postgresql/src
Amit Langote 3c152a27b0 Unify JSON categorize type API and export for external use
This essentially removes the JsonbTypeCategory enum and
jsonb_categorize_type() and integrates any jsonb-specific logic that
was in jsonb_categorize_type() into json_categorize_type(), now
moved to jsonfuncs.c.  The remaining JsonTypeCategory enum and
json_categorize_type() cover the needs of the callers in both json.c
and jsonb.c.  json_categorize_type() has grown a new parameter named
is_jsonb for callers to engage the jsonb-specific behavior of
json_categorize_type().

One notable change in the now exported API of json_categorize_type()
is that it now always returns *outfuncoid even though a caller may
have no need currently to see one.

This is in preparation of later commits to implement additional
SQL/JSON functions.

Co-authored-by: Álvaro Herrera <alvherre@alvh.no-ip.org>
Reviewed-by: Álvaro Herrera <alvherre@alvh.no-ip.org>
Discussion: https://postgr.es/m/CA+HiwqE4XTdfb1nW=Ojoy_tQSRhYt-q_kb6i5d4xcKyrLC1Nbg@mail.gmail.com
2023-07-20 16:19:56 +09:00
..
backend Unify JSON categorize type API and export for external use 2023-07-20 16:19:56 +09:00
bin Fix pg_recvlogical upon signal termination 2023-07-20 10:22:46 +09:00
common Generate automatically code and documentation related to wait events 2023-07-05 10:53:11 +09:00
fe_utils Handle \v as a whitespace character in parsers 2023-07-06 08:16:24 +09:00
include Unify JSON categorize type API and export for external use 2023-07-20 16:19:56 +09:00
interfaces Include <limits.h> in fe-auth.c, to get CHAR_BIT reliably. 2023-07-17 16:54:54 -04:00
makefiles Remove --disable-thread-safety and related code. 2023-07-12 08:20:43 +12:00
pl Translation updates 2023-06-26 12:02:02 +02:00
port Teach in-tree getopt_long() to move non-options to the end of argv. 2023-07-12 20:34:39 -07:00
template Use unnamed POSIX semaphores on Cygwin. 2023-01-06 10:33:28 +13:00
test Add psql \drg command to display role grants. 2023-07-19 12:46:30 -04:00
timezone Pre-beta mechanical code beautification. 2023-05-19 17:24:48 -04:00
tools Unify JSON categorize type API and export for external use 2023-07-20 16:19:56 +09:00
tutorial Pre-beta mechanical code beautification. 2023-05-19 17:24:48 -04:00
.gitignore
DEVELOPERS
Makefile Integrate pg_bsd_indent into our build/test infrastructure. 2023-02-12 12:22:21 -05:00
Makefile.global.in Remove --disable-thread-safety and related code. 2023-07-12 08:20:43 +12:00
Makefile.shlib autoconf: Rely on ar supporting index creation 2022-10-07 11:53:39 -07:00
meson.build Integrate pg_bsd_indent into our build/test infrastructure. 2023-02-12 12:22:21 -05:00
nls-global.mk Fix for make unportability 2022-07-13 09:15:01 +02:00