Does anyone know if it is possible to define a Postgres C function as taking a
variable number of parameters? The fmgr code will pass it, but I don't see any
way to use "create function" to register it.

Does one have to issue a create function for each additional parameter?

I am trying to port some mysql stuff to postgres, and mysql has a function
"concat" which will concatenate a number of fields. I have this coded for
Postgres, but I can't get it registered. I used a few "create function"
statements to cover the number of parameters I need, but this is really ugly.

(Also, this will help with "decode()," an oraclesque function I use.)

Fri, 20 Jul 2001 08:49:43 -0400
mlw <markw@mohawksoft.com>
C functions
mlw <markw@mohawksoft.com> writes:
> Does anyone know if it is possible to define a Postgres C function as
> taking a variable number of parameters? The fmgr code will pass it,
> but I don't see any way to use "create function" to register it.

No, it's not.  There is some (purely speculative) support for the idea
in the fmgr code, but none anywhere else, as yet.

> Does one have to issue a create function for each additional parameter?

Yup, you could make multiple pg_proc entries all pointing at the same
C function.  Kinda grotty, but...

			regards, tom lane

Fri, 20 Jul 2001 12:02:21 -0400
Tom Lane <tgl@sss.pgh.pa.us>
Re: C functions 