Move code for the bytea data type from varlena.c to new bytea.c master github/master
authorMichael Paquier <[email protected]>
Wed, 2 Jul 2025 00:52:21 +0000 (09:52 +0900)
committerMichael Paquier <[email protected]>
Wed, 2 Jul 2025 00:52:21 +0000 (09:52 +0900)
commitb45242fd30ffa6e1e7f490cc400ecbd966880f41
treee2f430b01ce2b899d552a247eaaf5749041a7388
parentbee23ea4ddc46198c95a4e73a83f453c09e04bf8
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 <[email protected]>
Reviewed-by: Peter Eisentraut <[email protected]>
Discussion: https://postgr.es/m/CAJ7c6TMPVPJ5DL447zDz5ydctB8OmuviURtSwd=PHCRFEPDEAQ@mail.gmail.com
src/backend/utils/adt/Makefile
src/backend/utils/adt/bytea.c [new file with mode: 0644]
src/backend/utils/adt/meson.build
src/backend/utils/adt/varlena.c