PostgreSQL Source Code: src/include/access/amapi.h Source File (original) (raw)
1
2
3
4
5
6
7
8
9
10
11
12#ifndef AMAPI_H
13#define AMAPI_H
14
18
19
20
21
22
23
26
27
29
30
31
32
33
34
35
37{
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
87{
95 bool ref_is_family;
98
99
100
101
102
103
104
106
107
109
110
114
115
117
118
121 bool *isnull,
125 bool indexUnchanged,
127
128
131
132
136 void *callback_state);
137
138
141
142
144
145
148 double loop_count,
149 Cost *indexStartupCost,
150 Cost *indexTotalCost,
152 double *indexCorrelation,
153 double *indexPages);
154
155
156
157
158
159
161
162
163typedef bytea *(*amoptions_function) (Datum reloptions,
165
166
169 bool *res, bool *isnull);
170
171
172typedef char *(*ambuildphasename_function) (int64 phasenum);
173
174
176
177
179 Oid opclassoid,
180 List *operators,
182
183
185 int nkeys,
186 int norderbys);
187
188
191 int nkeys,
193 int norderbys);
194
195
198
199
202
203
205
206
208
209
211
212
213
214
215
216
218 int nkeys, int norderbys);
219
220
222
223
225
226
227
228
229
231{
233
234
235
236
237
239
241
243
245
247
249
251
253
255
257
259
261
263
265
267
269
271
273
275
277
279
281
283
285
286
287
288
289
290
291
292
314
315
319
320
324
325
326
331
332#endif
IndexAmRoutine * GetIndexAmRoutine(Oid amhandler)
void(* amparallelrescan_function)(IndexScanDesc scan)
CompareType(* amtranslate_strategy_function)(StrategyNumber strategy, Oid opfamily)
IndexScanDesc(* ambeginscan_function)(Relation indexRelation, int nkeys, int norderbys)
void(* amadjustmembers_function)(Oid opfamilyoid, Oid opclassoid, List *operators, List *functions)
int(* amgettreeheight_function)(Relation rel)
bool(* amproperty_function)(Oid index_oid, int attno, IndexAMProperty prop, const char *propname, bool *res, bool *isnull)
bool(* amvalidate_function)(Oid opclassoid)
void(* amendscan_function)(IndexScanDesc scan)
IndexBulkDeleteResult *(* ambulkdelete_function)(IndexVacuumInfo *info, IndexBulkDeleteResult *stats, IndexBulkDeleteCallback callback, void *callback_state)
bool(* amcanreturn_function)(Relation indexRelation, int attno)
bytea *(* amoptions_function)(Datum reloptions, bool validate)
bool(* aminsert_function)(Relation indexRelation, Datum *values, bool *isnull, ItemPointer heap_tid, Relation heapRelation, IndexUniqueCheck checkUnique, bool indexUnchanged, struct IndexInfo *indexInfo)
void(* ambuildempty_function)(Relation indexRelation)
StrategyNumber(* amtranslate_cmptype_function)(CompareType cmptype, Oid opfamily)
int64(* amgetbitmap_function)(IndexScanDesc scan, TIDBitmap *tbm)
void(* amrestrpos_function)(IndexScanDesc scan)
void(* amcostestimate_function)(struct PlannerInfo *root, struct IndexPath *path, double loop_count, Cost *indexStartupCost, Cost *indexTotalCost, Selectivity *indexSelectivity, double *indexCorrelation, double *indexPages)
char *(* ambuildphasename_function)(int64 phasenum)
IndexBulkDeleteResult *(* amvacuumcleanup_function)(IndexVacuumInfo *info, IndexBulkDeleteResult *stats)
bool(* amgettuple_function)(IndexScanDesc scan, ScanDirection direction)
StrategyNumber IndexAmTranslateCompareType(CompareType cmptype, Oid amoid, Oid opfamily, bool missing_ok)
@ AMPROP_DISTANCE_ORDERABLE
Size(* amestimateparallelscan_function)(Relation indexRelation, int nkeys, int norderbys)
void(* aminitparallelscan_function)(void *target)
void(* ammarkpos_function)(IndexScanDesc scan)
struct OpFamilyMember OpFamilyMember
void(* aminsertcleanup_function)(Relation indexRelation, struct IndexInfo *indexInfo)
CompareType IndexAmTranslateStrategy(StrategyNumber strategy, Oid amoid, Oid opfamily, bool missing_ok)
IndexAmRoutine * GetIndexAmRoutineByAmId(Oid amoid, bool noerror)
struct IndexAmRoutine IndexAmRoutine
IndexBuildResult *(* ambuild_function)(Relation heapRelation, Relation indexRelation, struct IndexInfo *indexInfo)
void(* amrescan_function)(IndexScanDesc scan, ScanKey keys, int nkeys, ScanKey orderbys, int norderbys)
static bool validate(Port *port, const char *auth)
static Datum values[MAXATTR]
bool(* IndexBulkDeleteCallback)(ItemPointer itemptr, void *state)
struct IndexScanDescData * IndexScanDesc
static const struct fns functions
ambuildphasename_function ambuildphasename
ambuildempty_function ambuildempty
amvacuumcleanup_function amvacuumcleanup
amoptions_function amoptions
amestimateparallelscan_function amestimateparallelscan
amrestrpos_function amrestrpos
aminsert_function aminsert
amendscan_function amendscan
amtranslate_strategy_function amtranslatestrategy
amparallelrescan_function amparallelrescan
bool amconsistentordering
amtranslate_cmptype_function amtranslatecmptype
amcostestimate_function amcostestimate
amadjustmembers_function amadjustmembers
amgettuple_function amgettuple
amcanreturn_function amcanreturn
amgetbitmap_function amgetbitmap
amproperty_function amproperty
ambulkdelete_function ambulkdelete
amvalidate_function amvalidate
ammarkpos_function ammarkpos
bool amusemaintenanceworkmem
ambeginscan_function ambeginscan
amrescan_function amrescan
aminitparallelscan_function aminitparallelscan
uint8 amparallelvacuumoptions
aminsertcleanup_function aminsertcleanup
amgettreeheight_function amgettreeheight
bool amconsistentequality
static void callback(struct sockaddr *addr, struct sockaddr *mask, void *unused)