I am not sure this is of general enough usefulness to be in the backend. Can you add it as a pgfoundry project?
--------------------------------------------------------------------------- Fabien COELHO wrote: > > Dear PostgreSQL developers, > > Please find attached a small patch to convert bytea to bit strings and > vice versa. > > I used it in order to be able xor md5 results so as to checksum bundles of > tuples together. The MD5 result is an hexa text convertible to bytea with > decode, but then I was stuck... > > ISTM that having these types explicitely castable may be useful to others, > hence this small contribution. The cast allows to work on a bytea at the > bit level and to perform bitwise operations. > > ./src/backend/utils/adt/varbit.c > - add two conversion functions > > ./src/include/catalog/pg_proc.h > - declare the above functions in the catalog > > ./src/include/catalog/pg_cast.h > - declare the 4 explicit casts > > ./src/test/regress/sql/bit.sql > - test all those new casts > > ./src/test/regress/expected/bit.out > - new regression results > > ./src/test/regress/expected/opr_sanity.out > - pg figures out that bit and varbit are binary compatible, > which is the case (well, at least I assumed it). > > -- > Fabien. Content-Description: [ Attachment, skipping... ] > > ---------------------------(end of broadcast)--------------------------- > TIP 4: Have you searched our list archives? > > http://archives.postgresql.org -- Bruce Momjian http://candle.pha.pa.us EnterpriseDB http://www.enterprisedb.com + If your life is a hard drive, Christ can be your backup. + ---------------------------(end of broadcast)--------------------------- TIP 5: don't forget to increase your free space map settings