1/*-------------------------------------------------------------------------
4 * Declarations for execution of SQL-language functions.
7 * Portions Copyright (c) 1996-2025, PostgreSQL Global Development Group
8 * Portions Copyright (c) 1994, Regents of the University of California
10 * src/include/executor/functions.h
12 *-------------------------------------------------------------------------
21 * Data structure needed by the parser callback hooks to resolve parameter
22 * references during parsing of a SQL function's body. This is separate from
23 * SQLFunctionCache since we sometimes do parsing separately from execution.
27 char *
fname;
/* function's name */
28 int nargs;
/* number of input arguments */
30 char **
argnames;
/* names of input arguments; NULL if none */
31 /* Note that argnames[i] can be NULL, if some args are unnamed */
51 bool insertDroppedCols);
55#endif /* FUNCTIONS_H */
struct SQLFunctionParseInfo SQLFunctionParseInfo
Datum fmgr_sql(PG_FUNCTION_ARGS)
bool check_sql_fn_retval(List *queryTreeLists, Oid rettype, TupleDesc rettupdesc, char prokind, bool insertDroppedCols)
void check_sql_fn_statements(List *queryTreeLists)
DestReceiver * CreateSQLFunctionDestReceiver(void)
void sql_fn_parser_setup(struct ParseState *pstate, SQLFunctionParseInfoPtr pinfo)
SQLFunctionParseInfoPtr prepare_sql_fn_parse_info(HeapTuple procedureTuple, Node *call_expr, Oid inputCollation)
SQLFunctionParseInfo * SQLFunctionParseInfoPtr