diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2003-01-10 23:54:24 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2003-01-10 23:54:24 +0000 |
commit | 1afac12910b82cf68d064284391209f41a6adcf9 (patch) | |
tree | dee75ebb24c486541ab2cf55b29f71a367dc0a7b /src/include/executor/executor.h | |
parent | c83702606c3fb8c2bcef7b6f57232c982ff62ab3 (diff) |
Create a new file executor/execGrouping.c to centralize utility routines
shared by nodeGroup, nodeAgg, and soon nodeSubplan.
Diffstat (limited to 'src/include/executor/executor.h')
-rw-r--r-- | src/include/executor/executor.h | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/src/include/executor/executor.h b/src/include/executor/executor.h index 31cc2107536..fb300fc0443 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.85 2002/12/15 21:01:34 tgl Exp $ + * $Id: executor.h,v 1.86 2003/01/10 23:54:24 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -37,6 +37,31 @@ extern void ExecRestrPos(PlanState *node); extern bool ExecSupportsMarkRestore(NodeTag plantype); /* + * prototypes from functions in execGrouping.c + */ +extern bool execTuplesMatch(HeapTuple tuple1, + HeapTuple tuple2, + TupleDesc tupdesc, + int numCols, + AttrNumber *matchColIdx, + FmgrInfo *eqfunctions, + MemoryContext evalContext); +extern FmgrInfo *execTuplesMatchPrepare(TupleDesc tupdesc, + int numCols, + AttrNumber *matchColIdx); +extern uint32 ComputeHashFunc(Datum key, int typLen, bool byVal); +extern TupleHashTable BuildTupleHashTable(int numCols, AttrNumber *keyColIdx, + FmgrInfo *eqfunctions, + int nbuckets, Size entrysize, + MemoryContext tablecxt, + MemoryContext tempcxt); +extern TupleHashEntry LookupTupleHashEntry(TupleHashTable hashtable, + TupleTableSlot *slot, + bool *isnew); +extern TupleHashEntry ScanTupleHashTable(TupleHashTable hashtable, + TupleHashIterator *state); + +/* * prototypes from functions in execJunk.c */ extern JunkFilter *ExecInitJunkFilter(List *targetList, TupleDesc tupType, |