1
/*-------------------------------------------------------------------------
4
* Tuple conversion support.
7
* Portions Copyright (c) 1996-2011, PostgreSQL Global Development Group
8
* Portions Copyright (c) 1994, Regents of the University of California
10
* src/include/access/tupconvert.h
12
*-------------------------------------------------------------------------
17
#include "access/htup.h"
20
typedef struct TupleConversionMap
22
TupleDesc indesc; /* tupdesc for source rowtype */
23
TupleDesc outdesc; /* tupdesc for result rowtype */
24
AttrNumber *attrMap; /* indexes of input fields, or 0 for null */
25
Datum *invalues; /* workspace for deconstructing source */
27
Datum *outvalues; /* workspace for constructing result */
32
extern TupleConversionMap *convert_tuples_by_position(TupleDesc indesc,
36
extern TupleConversionMap *convert_tuples_by_name(TupleDesc indesc,
40
extern HeapTuple do_convert_tuple(HeapTuple tuple, TupleConversionMap *map);
42
extern void free_conversion_map(TupleConversionMap *map);
44
#endif /* TUPCONVERT_H */