Split JSON lexer/parser from 'json' data type support. Keep the code that pertains to the 'json' data type in json.c, but move the lexing and parsing code to a new file jsonapi.c, a name I chose because the corresponding prototypes are in jsonapi.h.
This seems like a logical division, because the JSON lexer and parser are also used by the 'jsonb' data type, but the SQL-callable functions in json.c are a separate thing. Also, the new jsonapi.c file needs to include far fewer header files than json.c, which seems like a good sign that this is an appropriate place to insert an abstraction boundary. I took the opportunity to remove a few apparently-unneeded includes from json.c at the same time. Patch by me, reviewed by David Steele, Mark Dilger, and Andrew Dunstan. The previous commit was, too, but I forgot to note it in the commit message. Discussion: http://postgr.es/m/ca+tgmoyfoxhd27mudgiovh6qtpd0c1k-f6obsa10awihbal...@mail.gmail.com Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/11b5e3e35d3900164cb36754ee4e4dcab0bd02f0 Modified Files -------------- src/backend/utils/adt/Makefile | 1 + src/backend/utils/adt/json.c | 1206 +------------------------------------- src/backend/utils/adt/jsonapi.c | 1216 +++++++++++++++++++++++++++++++++++++++ src/include/utils/jsonapi.h | 6 + 4 files changed, 1224 insertions(+), 1205 deletions(-)
