mirror of
https://github.com/postgres/postgres.git
synced 2025-06-26 12:21:12 +03:00
Simplify ExecutorRun's API and save some trivial number of cycles by having
it just return void instead of sometimes returning a TupleTableSlot. SQL functions don't need that anymore, and noplace else does either. Eliminating the return value also means one less hassle for the ExecutorRun hook functions that will be supported beginning in 8.4.
This commit is contained in:
@ -7,7 +7,7 @@
|
||||
* Portions Copyright (c) 1996-2008, PostgreSQL Global Development Group
|
||||
* Portions Copyright (c) 1994, Regents of the University of California
|
||||
*
|
||||
* $PostgreSQL: pgsql/src/include/executor/executor.h,v 1.151 2008/10/29 00:00:39 tgl Exp $
|
||||
* $PostgreSQL: pgsql/src/include/executor/executor.h,v 1.152 2008/10/31 21:07:55 tgl Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@ -61,9 +61,9 @@
|
||||
|
||||
|
||||
/* Hook for plugins to get control in ExecutorRun() */
|
||||
typedef TupleTableSlot *(*ExecutorRun_hook_type) (QueryDesc *queryDesc,
|
||||
ScanDirection direction,
|
||||
long count);
|
||||
typedef void (*ExecutorRun_hook_type) (QueryDesc *queryDesc,
|
||||
ScanDirection direction,
|
||||
long count);
|
||||
extern PGDLLIMPORT ExecutorRun_hook_type ExecutorRun_hook;
|
||||
|
||||
|
||||
@ -140,10 +140,10 @@ extern HeapTuple ExecRemoveJunk(JunkFilter *junkfilter, TupleTableSlot *slot);
|
||||
* prototypes from functions in execMain.c
|
||||
*/
|
||||
extern void ExecutorStart(QueryDesc *queryDesc, int eflags);
|
||||
extern TupleTableSlot *ExecutorRun(QueryDesc *queryDesc,
|
||||
ScanDirection direction, long count);
|
||||
extern TupleTableSlot *standard_ExecutorRun(QueryDesc *queryDesc,
|
||||
ScanDirection direction, long count);
|
||||
extern void ExecutorRun(QueryDesc *queryDesc,
|
||||
ScanDirection direction, long count);
|
||||
extern void standard_ExecutorRun(QueryDesc *queryDesc,
|
||||
ScanDirection direction, long count);
|
||||
extern void ExecutorEnd(QueryDesc *queryDesc);
|
||||
extern void ExecutorRewind(QueryDesc *queryDesc);
|
||||
extern void InitResultRelInfo(ResultRelInfo *resultRelInfo,
|
||||
|
Reference in New Issue
Block a user