mirror of
https://github.com/postgres/postgres.git
synced 2025-11-12 05:01:15 +03:00
Support use of function argument names to identify which actual arguments
match which function parameters. The syntax uses AS, for example funcname(value AS arg1, anothervalue AS arg2) Pavel Stehule
This commit is contained in:
@@ -22,7 +22,7 @@
|
||||
* Portions Copyright (c) 1994, Regents of the University of California
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $PostgreSQL: pgsql/src/backend/nodes/equalfuncs.c,v 1.364 2009/10/07 22:14:20 alvherre Exp $
|
||||
* $PostgreSQL: pgsql/src/backend/nodes/equalfuncs.c,v 1.365 2009/10/08 02:39:20 tgl Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@@ -241,6 +241,17 @@ _equalFuncExpr(FuncExpr *a, FuncExpr *b)
|
||||
return true;
|
||||
}
|
||||
|
||||
static bool
|
||||
_equalNamedArgExpr(NamedArgExpr *a, NamedArgExpr *b)
|
||||
{
|
||||
COMPARE_NODE_FIELD(arg);
|
||||
COMPARE_STRING_FIELD(name);
|
||||
COMPARE_SCALAR_FIELD(argnumber);
|
||||
COMPARE_LOCATION_FIELD(location);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
static bool
|
||||
_equalOpExpr(OpExpr *a, OpExpr *b)
|
||||
{
|
||||
@@ -2375,6 +2386,9 @@ equal(void *a, void *b)
|
||||
case T_FuncExpr:
|
||||
retval = _equalFuncExpr(a, b);
|
||||
break;
|
||||
case T_NamedArgExpr:
|
||||
retval = _equalNamedArgExpr(a, b);
|
||||
break;
|
||||
case T_OpExpr:
|
||||
retval = _equalOpExpr(a, b);
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user