1 /*-------------------------------------------------------------------------
2  *
3  * pg_operator_fn.h
4 *	 prototypes for functions in catalog/pg_operator.c
5  *
6  *
7  * Portions Copyright (c) 1996-2017, PostgreSQL Global Development Group
8  * Portions Copyright (c) 1994, Regents of the University of California
9  *
10  * src/include/catalog/pg_operator_fn.h
11  *
12  *-------------------------------------------------------------------------
13  */
14 #ifndef PG_OPERATOR_FN_H
15 #define PG_OPERATOR_FN_H
16 
17 #include "catalog/objectaddress.h"
18 #include "nodes/pg_list.h"
19 
20 extern ObjectAddress OperatorCreate(const char *operatorName,
21 			   Oid operatorNamespace,
22 			   Oid leftTypeId,
23 			   Oid rightTypeId,
24 			   Oid procedureId,
25 			   List *commutatorName,
26 			   List *negatorName,
27 			   Oid restrictionId,
28 			   Oid joinId,
29 			   bool canMerge,
30 			   bool canHash);
31 
32 extern ObjectAddress makeOperatorDependencies(HeapTuple tuple, bool isUpdate);
33 
34 extern void OperatorUpd(Oid baseId, Oid commId, Oid negId, bool isDelete);
35 
36 #endif							/* PG_OPERATOR_FN_H */
37