diff options
Diffstat (limited to 'src/include')
| -rw-r--r-- | src/include/commands/defrem.h | 15 | ||||
| -rw-r--r-- | src/include/nodes/nodes.h | 4 | ||||
| -rw-r--r-- | src/include/nodes/parsenodes.h | 33 | ||||
| -rw-r--r-- | src/include/parser/parse_func.h | 6 |
4 files changed, 18 insertions, 40 deletions
diff --git a/src/include/commands/defrem.h b/src/include/commands/defrem.h index 99e061d2de..f6ed06f3db 100644 --- a/src/include/commands/defrem.h +++ b/src/include/commands/defrem.h @@ -7,7 +7,7 @@ * Portions Copyright (c) 1996-2006, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $PostgreSQL: pgsql/src/include/commands/defrem.h,v 1.71 2006/03/05 15:58:55 momjian Exp $ + * $PostgreSQL: pgsql/src/include/commands/defrem.h,v 1.72 2006/04/15 17:45:41 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -57,22 +57,23 @@ extern void AlterFunction(AlterFunctionStmt *stmt); extern void CreateCast(CreateCastStmt *stmt); extern void DropCast(DropCastStmt *stmt); extern void DropCastById(Oid castOid); -extern void AlterFunctionNamespace(List *name, List *argtypes, +extern void AlterFunctionNamespace(List *name, List *argtypes, bool isagg, const char *newschema); /* commands/operatorcmds.c */ extern void DefineOperator(List *names, List *parameters); -extern void RemoveOperator(RemoveOperStmt *stmt); +extern void RemoveOperator(RemoveFuncStmt *stmt); extern void RemoveOperatorById(Oid operOid); extern void AlterOperatorOwner(List *name, TypeName *typeName1, TypeName *typename2, Oid newOwnerId); extern void AlterOperatorOwner_oid(Oid operOid, Oid newOwnerId); /* commands/aggregatecmds.c */ -extern void DefineAggregate(List *names, List *parameters); -extern void RemoveAggregate(RemoveAggrStmt *stmt); -extern void RenameAggregate(List *name, TypeName *basetype, const char *newname); -extern void AlterAggregateOwner(List *name, TypeName *basetype, Oid newOwnerId); +extern void DefineAggregate(List *name, List *args, bool oldstyle, + List *parameters); +extern void RemoveAggregate(RemoveFuncStmt *stmt); +extern void RenameAggregate(List *name, List *args, const char *newname); +extern void AlterAggregateOwner(List *name, List *args, Oid newOwnerId); /* commands/opclasscmds.c */ extern void DefineOpClass(CreateOpClassStmt *stmt); diff --git a/src/include/nodes/nodes.h b/src/include/nodes/nodes.h index b8415378d9..fe5ab018f5 100644 --- a/src/include/nodes/nodes.h +++ b/src/include/nodes/nodes.h @@ -7,7 +7,7 @@ * Portions Copyright (c) 1996-2006, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $PostgreSQL: pgsql/src/include/nodes/nodes.h,v 1.184 2006/03/07 01:00:18 tgl Exp $ + * $PostgreSQL: pgsql/src/include/nodes/nodes.h,v 1.185 2006/04/15 17:45:41 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -241,9 +241,7 @@ typedef enum NodeTag T_IndexStmt, T_CreateFunctionStmt, T_AlterFunctionStmt, - T_RemoveAggrStmt, T_RemoveFuncStmt, - T_RemoveOperStmt, T_RenameStmt, T_RuleStmt, T_NotifyStmt, diff --git a/src/include/nodes/parsenodes.h b/src/include/nodes/parsenodes.h index d6f7c4a95a..e4eb385df8 100644 --- a/src/include/nodes/parsenodes.h +++ b/src/include/nodes/parsenodes.h @@ -7,7 +7,7 @@ * Portions Copyright (c) 1996-2006, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $PostgreSQL: pgsql/src/include/nodes/parsenodes.h,v 1.306 2006/03/23 00:19:30 tgl Exp $ + * $PostgreSQL: pgsql/src/include/nodes/parsenodes.h,v 1.307 2006/04/15 17:45:41 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -1242,7 +1242,9 @@ typedef struct DefineStmt { NodeTag type; ObjectType kind; /* aggregate, operator, type */ + bool oldstyle; /* hack to signal old CREATE AGG syntax */ List *defnames; /* qualified name (list of Value strings) */ + List *args; /* a list of TypeName (if needed) */ List *definition; /* a list of DefElem */ } DefineStmt; @@ -1456,42 +1458,19 @@ typedef struct AlterFunctionStmt } AlterFunctionStmt; /* ---------------------- - * Drop Aggregate Statement - * ---------------------- - */ -typedef struct RemoveAggrStmt -{ - NodeTag type; - List *aggname; /* aggregate to drop */ - TypeName *aggtype; /* TypeName for input datatype, or NULL */ - DropBehavior behavior; /* RESTRICT or CASCADE behavior */ -} RemoveAggrStmt; - -/* ---------------------- - * Drop Function Statement + * Drop {Function|Aggregate|Operator} Statement * ---------------------- */ typedef struct RemoveFuncStmt { NodeTag type; - List *funcname; /* function to drop */ + ObjectType kind; /* function, aggregate, operator */ + List *name; /* qualified name of object to drop */ List *args; /* types of the arguments */ DropBehavior behavior; /* RESTRICT or CASCADE behavior */ } RemoveFuncStmt; /* ---------------------- - * Drop Operator Statement - * ---------------------- - */ -typedef struct RemoveOperStmt -{ - NodeTag type; - List *opname; /* operator to drop */ - List *args; /* types of the arguments */ - DropBehavior behavior; /* RESTRICT or CASCADE behavior */ -} RemoveOperStmt; - -/* ---------------------- * Drop Operator Class Statement * ---------------------- */ diff --git a/src/include/parser/parse_func.h b/src/include/parser/parse_func.h index 13aa706a04..486e5ea44d 100644 --- a/src/include/parser/parse_func.h +++ b/src/include/parser/parse_func.h @@ -7,7 +7,7 @@ * Portions Copyright (c) 1996-2006, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $PostgreSQL: pgsql/src/include/parser/parse_func.h,v 1.55 2006/03/14 22:48:22 tgl Exp $ + * $PostgreSQL: pgsql/src/include/parser/parse_func.h,v 1.56 2006/04/15 17:45:41 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -72,11 +72,11 @@ extern const char *funcname_signature_string(const char *funcname, extern const char *func_signature_string(List *funcname, int nargs, const Oid *argtypes); -extern Oid find_aggregate_func(List *aggname, Oid basetype, bool noError); - extern Oid LookupFuncName(List *funcname, int nargs, const Oid *argtypes, bool noError); extern Oid LookupFuncNameTypeNames(List *funcname, List *argtypes, bool noError); +extern Oid LookupAggNameTypeNames(List *aggname, List *argtypes, + bool noError); #endif /* PARSE_FUNC_H */ |
