From: | Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us> |
---|---|
To: | Lee Kindness <lkindness(at)csl(dot)co(dot)uk> |
Cc: | pgsql-patches(at)postgresql(dot)org |
Subject: | Re: fmgr.h: PG_NARGS() for number of arguments passed |
Date: | 2002-09-12 00:26:43 |
Message-ID: | 200209120026.g8C0QiV16180@candle.pha.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-patches |
Patch applied. Thanks.
---------------------------------------------------------------------------
Lee Kindness wrote:
> The small context diff below corrects what seems to be an oversight in
> fmgr.h - it's discouraged to access fcinfo directly but there is no
> macro to get the number of arguments passed to the function. Checking
> the number of arguments is often useful when you have a function which
> can be called like:
>
> func('arg');
> func(null);
> func();
>
> all mapping to the same C function.
>
> the macro has a function-like appearance to match the other PG_*
> macros.
>
> Regards, Lee Kindness.
>
> Index: fmgr.h
> ===================================================================
> RCS file: /projects/cvsroot/pgsql-server/src/include/fmgr.h,v
> retrieving revision 1.24
> diff -c -r1.24 fmgr.h
> *** fmgr.h 2002/09/04 20:31:36 1.24
> --- fmgr.h 2002/09/10 13:25:06
> ***************
> *** 116,121 ****
> --- 116,126 ----
> #define PG_FUNCTION_ARGS FunctionCallInfo fcinfo
>
> /*
> + * Get number of arguments passed to function.
> + */
> + #define PG_NARGS() (fcinfo->nargs)
> +
> + /*
> * If function is not marked "proisstrict" in pg_proc, it must check for
> * null arguments using this macro. Do not try to GETARG a null argument!
> */
>
> ---------------------------(end of broadcast)---------------------------
> TIP 1: subscribe and unsubscribe commands go to majordomo(at)postgresql(dot)org
>
--
Bruce Momjian | http://candle.pha.pa.us
pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073
From | Date | Subject | |
---|---|---|---|
Next Message | Bruce Momjian | 2002-09-12 00:59:39 | Re: psql: \pset pager 'always'? |
Previous Message | Bruce Momjian | 2002-09-12 00:25:57 | Re: cube patch |