|
7 | 7 | *
|
8 | 8 | *
|
9 | 9 | * IDENTIFICATION
|
10 |
| - * $Header: /cvsroot/pgsql/src/backend/nodes/equalfuncs.c,v 1.38 1999/05/25 22:41:13 momjian Exp $ |
| 10 | + * $Header: /cvsroot/pgsql/src/backend/nodes/equalfuncs.c,v 1.39 1999/06/06 17:46:40 tgl Exp $ |
11 | 11 | *
|
12 | 12 | *-------------------------------------------------------------------------
|
13 | 13 | */
|
@@ -257,6 +257,27 @@ _equalParam(Param *a, Param *b)
|
257 | 257 | return true;
|
258 | 258 | }
|
259 | 259 |
|
| 260 | +/* |
| 261 | + *Aggref is a subclass of Expr. |
| 262 | + */ |
| 263 | +staticbool |
| 264 | +_equalAggref(Aggref*a,Aggref*b) |
| 265 | +{ |
| 266 | +if (strcmp(a->aggname,b->aggname)!=0) |
| 267 | +return false; |
| 268 | +if (a->basetype!=b->basetype) |
| 269 | +return false; |
| 270 | +if (a->aggtype!=b->aggtype) |
| 271 | +return false; |
| 272 | +if (!equal(a->target,b->target)) |
| 273 | +return false; |
| 274 | +if (a->aggno!=b->aggno) |
| 275 | +return false; |
| 276 | +if (a->usenulls!=b->usenulls) |
| 277 | +return false; |
| 278 | +return true; |
| 279 | +} |
| 280 | + |
260 | 281 | /*
|
261 | 282 | *Func is a subclass of Expr.
|
262 | 283 | */
|
@@ -769,6 +790,9 @@ equal(void *a, void *b)
|
769 | 790 | caseT_Param:
|
770 | 791 | retval=_equalParam(a,b);
|
771 | 792 | break;
|
| 793 | +caseT_Aggref: |
| 794 | +retval=_equalAggref(a,b); |
| 795 | +break; |
772 | 796 | caseT_Func:
|
773 | 797 | retval=_equalFunc(a,b);
|
774 | 798 | break;
|
|