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. +