Move code for the bytea data type from varlena.c to new bytea.c

This commit moves all the routines related to the bytea data type into
its own new file, called bytea.c, clearing some of the bloat in
varlena.c.  This includes the routines for:
- Input, output, receive and send
- Comparison
- Casts to integer types
- bytea-specific functions

The internals of the routines moved here are unchanged, with one
exception.  This comes with a twist in bytea_string_agg_transfn(), where
the call to makeStringAggState() is replaced by the internals of this
routine, still located in varlena.c.  This simplifies the move to the
new file by not having to expose makeStringAggState().

Author: Aleksander Alekseev <aleksan...@timescale.com>
Reviewed-by: Peter Eisentraut <pe...@eisentraut.org>
Discussion: 
https://postgr.es/m/CAJ7c6TMPVPJ5DL447zDz5ydctB8OmuviURtSwd=phcrfepd...@mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/b45242fd30ffa6e1e7f490cc400ecbd966880f41

Modified Files
--------------
src/backend/utils/adt/Makefile    |    1 +
src/backend/utils/adt/bytea.c     | 1143 ++++++++++++++++++++++++++++++++++
src/backend/utils/adt/meson.build |    1 +
src/backend/utils/adt/varlena.c   | 1214 ++-----------------------------------
4 files changed, 1203 insertions(+), 1156 deletions(-)

Reply via email to