1
0
mirror of https://github.com/postgres/postgres.git synced 2025-08-30 06:01:21 +03:00

Add operator_with_argtypes grammar rule

This makes the handling of operators similar to that of functions and
aggregates.

Rename node FuncWithArgs to ObjectWithArgs, to reflect the expanded use.

Reviewed-by: Jim Nasby <Jim.Nasby@BlueTreble.com>
Reviewed-by: Michael Paquier <michael.paquier@gmail.com>
This commit is contained in:
Peter Eisentraut
2016-12-28 12:00:00 -05:00
parent 63ebd377a6
commit 550214a4ef
8 changed files with 126 additions and 116 deletions

View File

@@ -2954,13 +2954,13 @@ _copyGrantStmt(const GrantStmt *from)
return newnode;
}
static FuncWithArgs *
_copyFuncWithArgs(const FuncWithArgs *from)
static ObjectWithArgs *
_copyObjectWithArgs(const ObjectWithArgs *from)
{
FuncWithArgs *newnode = makeNode(FuncWithArgs);
ObjectWithArgs *newnode = makeNode(ObjectWithArgs);
COPY_NODE_FIELD(funcname);
COPY_NODE_FIELD(funcargs);
COPY_NODE_FIELD(objname);
COPY_NODE_FIELD(objargs);
return newnode;
}
@@ -5274,8 +5274,8 @@ copyObject(const void *from)
case T_CommonTableExpr:
retval = _copyCommonTableExpr(from);
break;
case T_FuncWithArgs:
retval = _copyFuncWithArgs(from);
case T_ObjectWithArgs:
retval = _copyObjectWithArgs(from);
break;
case T_AccessPriv:
retval = _copyAccessPriv(from);

View File

@@ -1095,10 +1095,10 @@ _equalGrantStmt(const GrantStmt *a, const GrantStmt *b)
}
static bool
_equalFuncWithArgs(const FuncWithArgs *a, const FuncWithArgs *b)
_equalObjectWithArgs(const ObjectWithArgs *a, const ObjectWithArgs *b)
{
COMPARE_NODE_FIELD(funcname);
COMPARE_NODE_FIELD(funcargs);
COMPARE_NODE_FIELD(objname);
COMPARE_NODE_FIELD(objargs);
return true;
}
@@ -3532,8 +3532,8 @@ equal(const void *a, const void *b)
case T_CommonTableExpr:
retval = _equalCommonTableExpr(a, b);
break;
case T_FuncWithArgs:
retval = _equalFuncWithArgs(a, b);
case T_ObjectWithArgs:
retval = _equalObjectWithArgs(a, b);
break;
case T_AccessPriv:
retval = _equalAccessPriv(a, b);