aboutsummaryrefslogtreecommitdiff
path: root/src/include/executor
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>2002-07-20 05:49:28 +0000
committerBruce Momjian <bruce@momjian.us>2002-07-20 05:49:28 +0000
commit1ce03603ccc690c07987a64cbc2b53391c51f083 (patch)
tree882766fa0cd7f6b7632c3c8c061c4b654f39dd78 /src/include/executor
parentb6d2faaf24cb7f39c66667d2c1d1472f3c9ab4f8 (diff)
downloadpostgresql-1ce03603ccc690c07987a64cbc2b53391c51f083.tar.gz
postgresql-1ce03603ccc690c07987a64cbc2b53391c51f083.zip
> 2. This patch includes the same Table Function API fixes that I
> submitted on July 9: > > http://archives.postgresql.org/pgsql-patches/2002-07/msg00056.php > > Please disregard that one *if* this one is applied. If this one is > rejected please go ahead with the July 9th patch. The July 9th Table Function API patch mentioned above is now in CVS, so here is an updated version of the guc patch which should apply cleanly against CVS tip. Joe Conway
Diffstat (limited to 'src/include/executor')
-rw-r--r--src/include/executor/executor.h21
1 files changed, 20 insertions, 1 deletions
diff --git a/src/include/executor/executor.h b/src/include/executor/executor.h
index 427c146a574..5b121546d96 100644
--- a/src/include/executor/executor.h
+++ b/src/include/executor/executor.h
@@ -7,7 +7,7 @@
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: executor.h,v 1.70 2002/07/20 05:16:59 momjian Exp $
+ * $Id: executor.h,v 1.71 2002/07/20 05:49:28 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -121,6 +121,25 @@ extern TupleTableSlot *ExecInitNullTupleSlot(EState *estate,
extern TupleDesc ExecTypeFromTL(List *targetList, hasoid_t withoid);
extern void SetChangedParamList(Plan *node, List *newchg);
+typedef struct TupOutputState
+{
+ TupleDesc tupdesc;
+ DestReceiver *destfunc;
+} TupOutputState;
+
+extern TupOutputState *begin_tup_output_tupdesc(CommandDest dest, TupleDesc tupdesc);
+extern void do_tup_output(TupOutputState *tstate, char **values);
+extern void do_text_output_multiline(TupOutputState *tstate, char *text);
+extern void end_tup_output(TupOutputState *tstate);
+
+#define PROJECT_LINE_OF_TEXT(text_to_project) \
+ do { \
+ char *values[1]; \
+ values[0] = text_to_project; \
+ do_tup_output(tstate, values); \
+ } while (0)
+
+
/*
* prototypes from functions in execUtils.c
*/