1 /*------------------------------------------------------------------------- 2 * 3 * pg_proc_fn.h 4 * prototypes for functions in catalog/pg_proc.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_proc_fn.h 11 * 12 *------------------------------------------------------------------------- 13 */ 14 #ifndef PG_PROC_FN_H 15 #define PG_PROC_FN_H 16 17 #include "catalog/objectaddress.h" 18 #include "nodes/pg_list.h" 19 20 extern ObjectAddress ProcedureCreate(const char *procedureName, 21 Oid procNamespace, 22 bool replace, 23 bool returnsSet, 24 Oid returnType, 25 Oid proowner, 26 Oid languageObjectId, 27 Oid languageValidator, 28 const char *prosrc, 29 const char *probin, 30 bool isAgg, 31 bool isWindowFunc, 32 bool security_definer, 33 bool isLeakProof, 34 bool isStrict, 35 char volatility, 36 char parallel, 37 oidvector *parameterTypes, 38 Datum allParameterTypes, 39 Datum parameterModes, 40 Datum parameterNames, 41 List *parameterDefaults, 42 Datum trftypes, 43 Datum proconfig, 44 float4 procost, 45 float4 prorows); 46 47 extern bool function_parse_error_transpose(const char *prosrc); 48 49 extern List *oid_array_to_list(Datum datum); 50 51 #endif /* PG_PROC_FN_H */ 52