Add get_bit/set_bit functions for bit strings, paralleling those for bytea,
Tom Lane <tgl@sss.pgh.pa.us>
Add get_bit/set_bit functions for bit strings, paralleling those for bytea, and implement OVERLAY() for bit strings and bytea. In passing also convert text OVERLAY() to a true built-in, instead of relying on a SQL function. Leonardo F, reviewed by Kevin Grittner
Files
| Path | Change | +/− |
|---|---|---|
| doc/src/sgml/func.sgml | modified | +83 −57 |
| src/backend/parser/gram.y | modified | +4 −3 |
| src/backend/utils/adt/varbit.c | modified | +172 −2 |
| src/backend/utils/adt/varlena.c | modified | +193 −21 |
| src/include/catalog/catversion.h | modified | +2 −2 |
| src/include/catalog/pg_proc.h | modified | +16 −4 |
| src/include/utils/builtins.h | modified | +3 −1 |
| src/include/utils/bytea.h | modified | +3 −1 |
| src/include/utils/varbit.h | modified | +5 −1 |
| src/test/regress/expected/bit.out | modified | +40 −0 |
| src/test/regress/expected/strings.out | modified | +18 −0 |
| src/test/regress/sql/bit.sql | modified | +11 −0 |
| src/test/regress/sql/strings.sql | modified | +3 −0 |