These mainly help understanding the function signatures better.
ExecBuildGroupingEqual(TupleDesc ldesc, TupleDesc rdesc,
const TupleTableSlotOps *lops, const TupleTableSlotOps *rops,
int numCols,
- AttrNumber *keyColIdx,
- Oid *eqfunctions,
+ const AttrNumber *keyColIdx,
+ const Oid *eqfunctions,
PlanState *parent)
{
ExprState *state = makeNode(ExprState);
ExprState *
execTuplesMatchPrepare(TupleDesc desc,
int numCols,
- AttrNumber *keyColIdx,
- Oid *eqOperators,
+ const AttrNumber *keyColIdx,
+ const Oid *eqOperators,
PlanState *parent)
{
Oid *eqFunctions = (Oid *) palloc(numCols * sizeof(Oid));
*/
void
execTuplesHashPrepare(int numCols,
- Oid *eqOperators,
+ const Oid *eqOperators,
Oid **eqFuncOids,
FmgrInfo **hashFunctions)
{
BuildTupleHashTable(PlanState *parent,
TupleDesc inputDesc,
int numCols, AttrNumber *keyColIdx,
- Oid *eqfuncoids,
+ const Oid *eqfuncoids,
FmgrInfo *hashfunctions,
long nbuckets, Size additionalsize,
MemoryContext tablecxt, MemoryContext tempcxt,
*/
extern ExprState *execTuplesMatchPrepare(TupleDesc desc,
int numCols,
- AttrNumber *keyColIdx,
- Oid *eqOperators,
+ const AttrNumber *keyColIdx,
+ const Oid *eqOperators,
PlanState *parent);
extern void execTuplesHashPrepare(int numCols,
- Oid *eqOperators,
+ const Oid *eqOperators,
Oid **eqFuncOids,
FmgrInfo **hashFunctions);
extern TupleHashTable BuildTupleHashTable(PlanState *parent,
TupleDesc inputDesc,
int numCols, AttrNumber *keyColIdx,
- Oid *eqfuncoids,
+ const Oid *eqfuncoids,
FmgrInfo *hashfunctions,
long nbuckets, Size additionalsize,
MemoryContext tablecxt,
extern ExprState *ExecBuildGroupingEqual(TupleDesc ldesc, TupleDesc rdesc,
const TupleTableSlotOps *lops, const TupleTableSlotOps *rops,
int numCols,
- AttrNumber *keyColIdx,
- Oid *eqfunctions,
+ const AttrNumber *keyColIdx,
+ const Oid *eqfunctions,
PlanState *parent);
extern ProjectionInfo *ExecBuildProjectionInfo(List *targetList,
ExprContext *econtext,