83 n = outdesc->
natts + 1;
86 n = indesc->
natts + 1;
129 int n = outdesc->
natts;
142 n = indesc->
natts + 1;
179 outvalues[
i] = invalues[
j];
180 outisnull[
i] = inisnull[
j];
217 invalues =
in_slot->tts_values;
218 inisnull =
in_slot->tts_isnull;
235 outvalues[
i] = invalues[
j];
236 outisnull[
i] = inisnull[
j];
void free_attrmap(AttrMap *map)
AttrMap * build_attrmap_by_name_if_req(TupleDesc indesc, TupleDesc outdesc, bool missing_ok)
AttrMap * build_attrmap_by_position(TupleDesc indesc, TupleDesc outdesc, const char *msg)
bool bms_is_member(int x, const Bitmapset *a)
Bitmapset * bms_add_member(Bitmapset *a, int x)
#define Assert(condition)
TupleTableSlot * ExecStoreVirtualTuple(TupleTableSlot *slot)
#define palloc_object(type)
#define palloc_array(type, count)
HeapTuple heap_form_tuple(TupleDesc tupleDescriptor, const Datum *values, const bool *isnull)
void heap_deform_tuple(HeapTuple tuple, TupleDesc tupleDesc, Datum *values, bool *isnull)
void pfree(void *pointer)
#define FirstLowInvalidHeapAttributeNumber
TupleConversionMap * convert_tuples_by_name(TupleDesc indesc, TupleDesc outdesc)
void free_conversion_map(TupleConversionMap *map)
TupleConversionMap * convert_tuples_by_position(TupleDesc indesc, TupleDesc outdesc, const char *msg)
TupleConversionMap * convert_tuples_by_name_attrmap(TupleDesc indesc, TupleDesc outdesc, AttrMap *attrMap)
TupleTableSlot * execute_attr_map_slot(AttrMap *attrMap, TupleTableSlot *in_slot, TupleTableSlot *out_slot)
Bitmapset * execute_attr_map_cols(AttrMap *attrMap, Bitmapset *in_cols)
HeapTuple execute_attr_map_tuple(HeapTuple tuple, TupleConversionMap *map)
static TupleTableSlot * ExecClearTuple(TupleTableSlot *slot)
static void slot_getallattrs(TupleTableSlot *slot)